public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* PATCH: Update gcc-4.4/changes.html for x86-64 ABI changes
@ 2009-04-20  2:25 H.J. Lu
  2009-04-21  7:39 ` Gerald Pfeifer
  0 siblings, 1 reply; 4+ messages in thread
From: H.J. Lu @ 2009-04-20  2:25 UTC (permalink / raw)
  To: gcc-patches

Hi,

This patch documents x86-64 ABI changes in gcc 4.4.


H.J.
----
Index: gcc-4.4/changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.4/changes.html,v
retrieving revision 1.69
diff -u -p -r1.69 changes.html
--- gcc-4.4/changes.html	19 Apr 2009 21:57:47 -0000	1.69
+++ gcc-4.4/changes.html	20 Apr 2009 02:24:22 -0000
@@ -539,6 +539,12 @@
     <li>GCC can now utilize the SVML library for vectorizing calls to
 	a set of C99 functions if <code>-mveclibabi=svml</code> is specified
 	and you link to an SVML ABI compatible library.</li>
+    <li>The following changes have been made to conform to x86-64 ABI:
+      <ul>
+	<li>Passing/returning structures with flexible array member.</li>
+	<li>Passing/returning structures with complex float member.</li>
+	<li>Passing/returning unions with long double member.</li>
+       </ul></li>
     <li>A new <code>target</code> attribute was added to allow programmers to change the target options like <code>-msse2</code> or <code>-march=k8</code> for an individual function.  You can also change the target options via the <code>GCC target</code> pragma for functions defined after the pragma.</li>
     <li>GCC can now be configured with
     options <code>--with-arch-32</code>, <code>--with-arch-64</code>,

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: PATCH: Update gcc-4.4/changes.html for x86-64 ABI changes
  2009-04-20  2:25 PATCH: Update gcc-4.4/changes.html for x86-64 ABI changes H.J. Lu
@ 2009-04-21  7:39 ` Gerald Pfeifer
  2009-04-23 14:30   ` H.J. Lu
  0 siblings, 1 reply; 4+ messages in thread
From: Gerald Pfeifer @ 2009-04-21  7:39 UTC (permalink / raw)
  To: H.J. Lu; +Cc: gcc-patches

On Sun, 19 Apr 2009, H.J. Lu wrote:
> This patch documents x86-64 ABI changes in gcc 4.4.

Thanks, H.J.

> +    <li>The following changes have been made to conform to x86-64 ABI:

"to the x86-64 ABI"?

> +      <ul>
> +	<li>Passing/returning structures with flexible array member.</li>
> +	<li>Passing/returning structures with complex float member.</li>
> +	<li>Passing/returning unions with long double member.</li>

This somehow doesn't really list actual changes.  I assume this is
more along the lines of "in the following cases the ABI has changed
to conform to the x86-64 ABI" and something like "Code built with
previous versions of GCC that uses any of these is not compatible
with code built with GCC 4.4.0 or later" perhaps?

Or would it make sense to describe the concrete changes?  The second
sentence likely still makes sense in that case to be explicit here.

Gerald

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: PATCH: Update gcc-4.4/changes.html for x86-64 ABI changes
  2009-04-21  7:39 ` Gerald Pfeifer
@ 2009-04-23 14:30   ` H.J. Lu
  2009-04-26  0:22     ` Gerald Pfeifer
  0 siblings, 1 reply; 4+ messages in thread
From: H.J. Lu @ 2009-04-23 14:30 UTC (permalink / raw)
  To: Gerald Pfeifer; +Cc: gcc-patches

On Tue, Apr 21, 2009 at 09:39:31AM +0200, Gerald Pfeifer wrote:
> On Sun, 19 Apr 2009, H.J. Lu wrote:
> > This patch documents x86-64 ABI changes in gcc 4.4.
> 
> Thanks, H.J.
> 
> > +    <li>The following changes have been made to conform to x86-64 ABI:
> 
> "to the x86-64 ABI"?
> 
> > +      <ul>
> > +	<li>Passing/returning structures with flexible array member.</li>
> > +	<li>Passing/returning structures with complex float member.</li>
> > +	<li>Passing/returning unions with long double member.</li>
> 
> This somehow doesn't really list actual changes.  I assume this is
> more along the lines of "in the following cases the ABI has changed
> to conform to the x86-64 ABI" and something like "Code built with
> previous versions of GCC that uses any of these is not compatible
> with code built with GCC 4.4.0 or later" perhaps?
> 
> Or would it make sense to describe the concrete changes?  The second
> sentence likely still makes sense in that case to be explicit here.
> 

Here is the updated one.


H.J.
---
Index: changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.4/changes.html,v
retrieving revision 1.70
diff -u -p -r1.70 changes.html
--- changes.html	21 Apr 2009 10:41:36 -0000	1.70
+++ changes.html	23 Apr 2009 13:59:25 -0000
@@ -549,6 +549,34 @@
     <li>GCC can now utilize the SVML library for vectorizing calls to
 	a set of C99 functions if <code>-mveclibabi=svml</code> is specified
 	and you link to an SVML ABI compatible library.</li>
+    <li>On x86-64, the ABI has been changed in the following cases to
+        conform to the x86-64 ABI:
+      <ul>
+	<li>Passing/returning structures with flexible array member:
+    <pre>
+  struct foo
+    {
+      int i;
+      int flex[];
+    };</pre></li>
+	<li>Passing/returning structures with complex float member:
+    <pre>
+  struct foo
+    {
+      int i;
+      __complex__ float f;
+    };</pre></li>
+	<li>Passing/returning unions with long double member:
+    <pre>
+  union foo
+    {
+      int x;
+      long double ld;
+    };</pre></li>
+       </ul>
+	Code built with previous versions of GCC that uses any of these is
+	not compatible with code built with GCC 4.4.0 or later.
+       </li>
     <li>A new <code>target</code> attribute was added to allow programmers to change the target options like <code>-msse2</code> or <code>-march=k8</code> for an individual function.  You can also change the target options via the <code>GCC target</code> pragma for functions defined after the pragma.</li>
     <li>GCC can now be configured with
     options <code>--with-arch-32</code>, <code>--with-arch-64</code>,

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: PATCH: Update gcc-4.4/changes.html for x86-64 ABI changes
  2009-04-23 14:30   ` H.J. Lu
@ 2009-04-26  0:22     ` Gerald Pfeifer
  0 siblings, 0 replies; 4+ messages in thread
From: Gerald Pfeifer @ 2009-04-26  0:22 UTC (permalink / raw)
  To: H.J. Lu; +Cc: gcc-patches

On Thu, 23 Apr 2009, H.J. Lu wrote:
> Here is the updated one.

Thanks for the update, H.J.

Gerald

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2009-04-25 23:51 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-04-20  2:25 PATCH: Update gcc-4.4/changes.html for x86-64 ABI changes H.J. Lu
2009-04-21  7:39 ` Gerald Pfeifer
2009-04-23 14:30   ` H.J. Lu
2009-04-26  0:22     ` Gerald Pfeifer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).