This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [RFA wwwdocs] Re: [PATCH v2] Target-specific limits on vector alignment
- From: "Ulrich Weigand" <uweigand at de dot ibm dot com>
- To: rearnsha at arm dot com (Richard Earnshaw)
- Cc: ramana dot radhakrishnan at linaro dot org (ramana dot radhakrishnan at linaro dot org), richard dot guenther at gmail dot com (Richard Guenther), gcc-patches at gcc dot gnu dot org (gcc-patches at gcc dot gnu dot org)
- Date: Fri, 10 Aug 2012 18:28:14 +0200 (CEST)
- Subject: Re: [RFA wwwdocs] Re: [PATCH v2] Target-specific limits on vector alignment
Richard Earnshaw wrote:
> How about:
>
> <p>On ARM, a bug has been fixed in GCC's implementation of the AAPCS
> rules for the layout of vectors that could lead to wrong code being
> generated. Vectors larger than 8 bytes in size are now by default
> aligned to an 8-byte boundary. This is an ABI change: code that makes
> explicit use of vector types may be incompatible with binary objects
> built with older versions of GCC. Auto-vectorized code is not affected
> by this change.</p>
Sounds better to me, thanks :-)
Here's what I have committed to wwwdocs.
Bye,
Ulrich
Index: gcc-4.6/changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.6/changes.html,v
retrieving revision 1.141
diff -c -p -r1.141 changes.html
*** gcc-4.6/changes.html 12 Jun 2012 10:43:41 -0000 1.141
--- gcc-4.6/changes.html 10 Aug 2012 16:23:57 -0000
***************
*** 68,73 ****
--- 68,82 ----
default by <code>-Wall</code> flag and <code>-Wunused-but-set-parameter</code>
by <code>-Wall -Wextra</code> flags.</li>
+ <li>On ARM, a bug has been fixed in GCC's implementation of the AAPCS
+ rules for the layout of vectors that could lead to wrong code being
+ generated. Vectors larger than 8 bytes in size are now by default
+ aligned to an 8-byte boundary. This is an ABI change: code that makes
+ explicit use of vector types may be incompatible with binary objects
+ built with older versions of GCC. Auto-vectorized code is not affected
+ by this change. (This change affects GCC versions 4.6.4 and later,
+ with the exception of versions 4.7.0 and 4.7.1.)</li>
+
<li><p>Support for a number of older systems and recently
unmaintained or untested target ports of GCC has been declared
obsolete in GCC 4.6. Unless there is activity to revive them, the
Index: gcc-4.7/changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.7/changes.html,v
retrieving revision 1.123
diff -c -p -r1.123 changes.html
*** gcc-4.7/changes.html 23 Jul 2012 05:58:05 -0000 1.123
--- gcc-4.7/changes.html 10 Aug 2012 16:23:58 -0000
***************
*** 121,126 ****
--- 121,134 ----
different GCC versions and with C++98/C++03 code compiled with any version.
</li>
+ <li>On ARM, a bug has been fixed in GCC's implementation of the AAPCS
+ rules for the layout of vectors that could lead to wrong code being
+ generated. Vectors larger than 8 bytes in size are now by default
+ aligned to an 8-byte boundary. This is an ABI change: code that makes
+ explicit use of vector types may be incompatible with binary objects
+ built with older versions of GCC. Auto-vectorized code is not affected
+ by this change. (This change affects GCC versions 4.7.2 and later.)</li>
+
<li>More information on porting to GCC 4.7 from previous versions
of GCC can be found in
the <a href="http://gcc.gnu.org/gcc-4.7/porting_to.html">porting
Index: gcc-4.8/changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.8/changes.html,v
retrieving revision 1.9
diff -c -p -r1.9 changes.html
*** gcc-4.8/changes.html 31 Jul 2012 12:13:01 -0000 1.9
--- gcc-4.8/changes.html 10 Aug 2012 16:23:58 -0000
*************** more information about requirements to b
*** 24,29 ****
--- 24,37 ----
<p>The G++ namespace association extension, <code>__attribute ((strong))</code>,
has been deprecated. Inline namespaces should be used instead.</p>
+ <p>On ARM, a bug has been fixed in GCC's implementation of the AAPCS
+ rules for the layout of vectors that could lead to wrong code being
+ generated. Vectors larger than 8 bytes in size are now by default
+ aligned to an 8-byte boundary. This is an ABI change: code that makes
+ explicit use of vector types may be incompatible with binary objects
+ built with older versions of GCC. Auto-vectorized code is not affected
+ by this change.</p>
+
<h2>General Optimizer Improvements</h2>
<ul>
--
Dr. Ulrich Weigand
GNU Toolchain for Linux on System z and Cell BE
Ulrich.Weigand@de.ibm.com