https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109954

--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
If -march= isn't specified, then the default configured value (explicitly or
implicitly) is used for it.  That is the case on lots of architectures, not
just for -m32.
We say in the documentation:
@item --with-cpu=@var{cpu}
@itemx --with-cpu-32=@var{cpu}
@itemx --with-cpu-64=@var{cpu}
Specify which cpu variant the compiler should generate code for by default.
@var{cpu} will be used as the default value of the @option{-mcpu=} switch.
This option is only supported on some targets, including ARC, ARM, i386, M68k,
PowerPC, and SPARC@.  It is mandatory for ARC@.  The @option{--with-cpu-32} and
@option{--with-cpu-64} options specify separate default CPUs for
32-bit and 64-bit modes; these options are only supported for aarch64, i386,
x86-64, PowerPC, and SPARC@.

@item --with-schedule=@var{cpu}
@itemx --with-arch=@var{cpu}
@itemx --with-arch-32=@var{cpu}
@itemx --with-arch-64=@var{cpu}
@itemx --with-tune=@var{cpu}
@itemx --with-tune-32=@var{cpu}
@itemx --with-tune-64=@var{cpu}
@itemx --with-abi=@var{abi}
@itemx --with-fpu=@var{type}
@itemx --with-float=@var{type}
These configure options provide default values for the @option{-mschedule=},
@option{-march=}, @option{-mtune=}, @option{-mabi=}, and @option{-mfpu=}
options and for @option{-mhard-float} or @option{-msoft-float}.  As with
@option{--with-cpu}, which switches will be accepted and acceptable values
of the arguments depend on the target.

So, if you configure gcc --with-arch-32=i386 vs. --with-arch-32=x86-64, it will
behave differently.
And if you don't use any of those --with-arch*= configure options, a default is
picked.

Reply via email to