[6/6] x86: bring "gas --help" output for --32 etc in sync with reality

Message ID 8022ee5b-9663-94c4-a81e-3219a439545a@suse.com
State New
Headers show
Series
  • x86: further value overflow diagnostic adjustments
Related show

Commit Message

Luis Machado via Binutils June 14, 2021, 10:26 a.m.
The testsuite uses the output to determine whether BFD64 is in effect.

--x32 is supported for ELF only; don't advertise it for PE/COFF. --64 is
also supported for Mach-O; advertise it. Adjust the testsuite's BFD64
check accordingly.

Also replace "code" by "object", since it's the object format that the
options primarily control. It's also _initial_ code bitness, but this
can be changed by directives.

gas/
2021-06-XX  Jan Beulich  <jbeulich@suse.com>

	* config/tc-i386.c (md_show_usage): Split ELF and PE/COFF parts
	of object format controlling option. Add Mach-O to the latter.
	* testsuite/gas/i386/i386.exp (gas_bfd64_check): Adjust
	accordingly.

Comments

Luis Machado via Binutils June 17, 2021, 2:48 p.m. | #1
On Mon, Jun 14, 2021 at 3:26 AM Jan Beulich <jbeulich@suse.com> wrote:
>

> The testsuite uses the output to determine whether BFD64 is in effect.

>

> --x32 is supported for ELF only; don't advertise it for PE/COFF. --64 is

> also supported for Mach-O; advertise it. Adjust the testsuite's BFD64

> check accordingly.

>

> Also replace "code" by "object", since it's the object format that the

> options primarily control. It's also _initial_ code bitness, but this

> can be changed by directives.

>

> gas/

> 2021-06-XX  Jan Beulich  <jbeulich@suse.com>

>

>         * config/tc-i386.c (md_show_usage): Split ELF and PE/COFF parts

>         of object format controlling option. Add Mach-O to the latter.

>         * testsuite/gas/i386/i386.exp (gas_bfd64_check): Adjust

>         accordingly.

>

> --- a/gas/config/tc-i386.c

> +++ b/gas/config/tc-i386.c

> @@ -13719,10 +13719,14 @@ md_show_usage (FILE *stream)

>    fprintf (stream, _("\

>    -s                      ignored\n"));

>  #endif

> -#if defined BFD64 && (defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) \

> -                     || defined (TE_PE) || defined (TE_PEP))

> +#ifdef BFD64

> +# if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF)

>    fprintf (stream, _("\

> -  --32/--64/--x32         generate 32bit/64bit/x32 code\n"));

> +  --32/--64/--x32         generate 32bit/64bit/x32 object\n"));

> +# elif defined (TE_PE) || defined (TE_PEP) || defined (OBJ_MACH_O)

> +  fprintf (stream, _("\

> +  --32/--64               generate 32bit/64bit object\n"));

> +# endif

>  #endif

>  #ifdef SVR4_COMMENT_CHARS

>    fprintf (stream, _("\

> --- a/gas/testsuite/gas/i386/i386.exp

> +++ b/gas/testsuite/gas/i386/i386.exp

> @@ -41,7 +41,7 @@ proc gas_bfd64_check { } {

>      global AS

>

>      set status [gas_host_run "$AS --help" ""]

> -    return [regexp "32bit/64bit/x32" [lindex $status 1]];

> +    return [regexp "32bit/64bit" [lindex $status 1]];

>  }

>

>  if [gas_32_check] then {

>


OK.

Thanks.

-- 
H.J.

Patch

--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -13719,10 +13719,14 @@  md_show_usage (FILE *stream)
   fprintf (stream, _("\
   -s                      ignored\n"));
 #endif
-#if defined BFD64 && (defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) \
-		      || defined (TE_PE) || defined (TE_PEP))
+#ifdef BFD64
+# if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF)
   fprintf (stream, _("\
-  --32/--64/--x32         generate 32bit/64bit/x32 code\n"));
+  --32/--64/--x32         generate 32bit/64bit/x32 object\n"));
+# elif defined (TE_PE) || defined (TE_PEP) || defined (OBJ_MACH_O)
+  fprintf (stream, _("\
+  --32/--64               generate 32bit/64bit object\n"));
+# endif
 #endif
 #ifdef SVR4_COMMENT_CHARS
   fprintf (stream, _("\
--- a/gas/testsuite/gas/i386/i386.exp
+++ b/gas/testsuite/gas/i386/i386.exp
@@ -41,7 +41,7 @@  proc gas_bfd64_check { } {
     global AS
 
     set status [gas_host_run "$AS --help" ""]
-    return [regexp "32bit/64bit/x32" [lindex $status 1]];
+    return [regexp "32bit/64bit" [lindex $status 1]];
 }
 
 if [gas_32_check] then {