diff mbox

Document -mabi=elfv[12] (Re: [PATCH, rs6000] ELFv2 ABI 1/8: Add options and infrastructure)

Message ID 201311142207.rAEM7hm1021079@d06av02.portsmouth.uk.ibm.com
State New
Headers show

Commit Message

Ulrich Weigand Nov. 14, 2013, 10:07 p.m. UTC
Joseph Myers wrote:
> On Tue, 12 Nov 2013, Ulrich Weigand wrote:
> > > > Therefore, it is introduces via a new pair of options
> > > >    -mabi=elfv1 / -mabi=elfv2
> > > > where -mabi=elfv1 select the current Linux ABI, and -mabi=elfv2
> > > > selects the new one.
> > > 
> > > New command-line options need invoke.texi documentation.
> > 
> > As mentioned above, it's probably best to mark it undocumented.
> 
> No, even always-warning options like -mabi=ibmlongdouble are documented.

Ah, indeed; thanks for pointing that out.  Well, that's certainly
fine with me too.

Here's a patch to add documentation along the lines of what we have
for the longdouble switches.

Doc build tested on powerpc64-linux.

David, would that be OK for mainline, or do have other suggestions?

Bye,
Ulrich

ChangeLog:

	* doc/invoke.texi (-mabi=elfv1, -mabi=elfv2): Document.

Comments

David Edelsohn Nov. 14, 2013, 10:49 p.m. UTC | #1
On Thu, Nov 14, 2013 at 5:07 PM, Ulrich Weigand <uweigand@de.ibm.com> wrote:

> Here's a patch to add documentation along the lines of what we have
> for the longdouble switches.
>
> Doc build tested on powerpc64-linux.
>
> David, would that be OK for mainline, or do have other suggestions?

I don't think that the wording is correct because -mabi=elfv1 and
-mabi=elfv2 are "options" for either endian.

> ChangeLog:
>
>         * doc/invoke.texi (-mabi=elfv1, -mabi=elfv2): Document.
>
> Index: gcc/gcc/doc/invoke.texi
> ===================================================================
> --- gcc.orig/gcc/doc/invoke.texi
> +++ gcc/gcc/doc/invoke.texi
> @@ -18846,7 +18846,8 @@ SVR4 ABI)@.
>  @opindex mabi
>  Extend the current ABI with a particular extension, or remove such extension.
>  Valid values are @var{altivec}, @var{no-altivec}, @var{spe},
> -@var{no-spe}, @var{ibmlongdouble}, @var{ieeelongdouble}@.
> +@var{no-spe}, @var{ibmlongdouble}, @var{ieeelongdouble},
> +@var{elfv1}, @var{elfv2}@.
>
>  @item -mabi=spe
>  @opindex mabi=spe
> @@ -18868,6 +18869,16 @@ This is a PowerPC 32-bit SYSV ABI option
>  Change the current ABI to use IEEE extended-precision long double.
>  This is a PowerPC 32-bit Linux ABI option.
>
> +@item -mabi=elfv1
> +@opindex mabi=elfv1
> +Change the current ABI to use the ELFv1 ABI.
> +This is a little-endian PowerPC 64-bit Linux ABI option.

Delete the second line and replace it with something like

"This is the default ABI for big-endian PowerPC 64-bit Linux.
Overriding the default ABI requires special system support and is
likely to fail in spectacular ways."

> +
> +@item -mabi=elfv2
> +@opindex mabi=elfv2
> +Change the current ABI to use the ELFv2 ABI.
> +This is a big-endian PowerPC 64-bit Linux ABI option.

Similarly, delete the second line and replace it with something like

"This is the default ABI for little-endian PowerPC 64-bit Linux.
Overriding the default ABI requires special system support and is
likely to fail in spectacular ways."

> +
>  @item -mprototype
>  @itemx -mno-prototype
>  @opindex mprototype
diff mbox

Patch

Index: gcc/gcc/doc/invoke.texi
===================================================================
--- gcc.orig/gcc/doc/invoke.texi
+++ gcc/gcc/doc/invoke.texi
@@ -18846,7 +18846,8 @@  SVR4 ABI)@.
 @opindex mabi
 Extend the current ABI with a particular extension, or remove such extension.
 Valid values are @var{altivec}, @var{no-altivec}, @var{spe},
-@var{no-spe}, @var{ibmlongdouble}, @var{ieeelongdouble}@.
+@var{no-spe}, @var{ibmlongdouble}, @var{ieeelongdouble},
+@var{elfv1}, @var{elfv2}@.
 
 @item -mabi=spe
 @opindex mabi=spe
@@ -18868,6 +18869,16 @@  This is a PowerPC 32-bit SYSV ABI option
 Change the current ABI to use IEEE extended-precision long double.
 This is a PowerPC 32-bit Linux ABI option.
 
+@item -mabi=elfv1
+@opindex mabi=elfv1
+Change the current ABI to use the ELFv1 ABI.
+This is a little-endian PowerPC 64-bit Linux ABI option.
+
+@item -mabi=elfv2
+@opindex mabi=elfv2
+Change the current ABI to use the ELFv2 ABI.
+This is a big-endian PowerPC 64-bit Linux ABI option.
+
 @item -mprototype
 @itemx -mno-prototype
 @opindex mprototype