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

Thomas Schwinge <tschwinge at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |redi at gcc dot gnu.org,
                   |                            |tschwinge at gcc dot gnu.org

--- Comment #17 from Thomas Schwinge <tschwinge at gcc dot gnu.org> ---
I'm still confused.

Conversely this means that the x86_64 'm32' multilib isn't actually "code that
runs on any i386 system", right?  (Unless configured with suitable
'--with-arch-32=[32-bit x86]'.)

However, 'gcc/config/i386/i386.opt':

    m32
    Target RejectNegative Negative(m64) InverseMask(ISA_64BIT)
Var(ix86_isa_flags) Save
    Generate 32bit i386 code.

Note: "32bit i386 code".

And, 'gcc/config/i386/x86-64.h'

    #define ASM_SPEC "%{m16|m32:--32} %{m64:--64} %{mx32:--x32}"

Per 'info as':

    The i386 version of 'as' has a few machine dependent options:

    '--32 | --x32 | --64'
         Select the word size, either 32 bits or 64 bits.  '--32' implies
         Intel i386 architecture, while '--x32' and '--64' imply AMD x86-64
         architecture with 32-bit or 64-bit word-size respectively.

Note: "'--32' implies Intel i386 architecture" (thus, 32-bit x86 code?), again.

All that similar for the other related options, as has been mentioned already.

---

Do we need a different default '--with-arch-32=[...]' -- like a number of other
GCC configurations seem to be doing?  For example:

    i[34567]86-*-solaris2* | x86_64-*-solaris2*)
            [...]
            with_arch_32=${with_arch_32:-pentium4}

    mips*-img-linux*)
            [...]
            with_arch_32="mips32r6"
            with_arch_64="mips64r6"

Reply via email to