From b00af7c8c615891f24a21d79a5bea35ef82bf252 Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Tue, 15 Jun 2021 08:01:12 +0200 Subject: [PATCH] x86: bring "gas --help" output for --32 etc in sync with reality 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/ChangeLog | 7 +++++++ gas/config/tc-i386.c | 10 +++++++--- gas/testsuite/gas/i386/i386.exp | 2 +- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index d01ba239f3f..be9882a0d0a 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,10 @@ +2021-06-15 Jan Beulich + + * 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. + 2021-06-15 Jan Beulich * config/tc-i386.c (disp16, disp32, disp32s): Delete. diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 18187d7bfa1..168f7d5ba75 100644 --- 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 object\n")); +# elif defined (TE_PE) || defined (TE_PEP) || defined (OBJ_MACH_O) fprintf (stream, _("\ - --32/--64/--x32 generate 32bit/64bit/x32 code\n")); + --32/--64 generate 32bit/64bit object\n")); +# endif #endif #ifdef SVR4_COMMENT_CHARS fprintf (stream, _("\ diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp index 8f41778034c..1e0a363a803 100644 --- 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 { -- 2.30.2