Andrew Walrond <[EMAIL PROTECTED]> writes:

> If I have a gcc configured for i686-* target system and I use that compiler 
> to 
> build a package without any -m submodel options , is the generated code
>  1) only suitable for i686 and better, or
>  2) tuned for i686 and better but still OK for i386

The latter.  Configuring for i686-* is equivalent to configuring for
i386-* with the option --with-cpu=i686.  This causes the compiler to
be built as though you specified -mtune=i686 for each compile which
does not explicitly use -mtune, -march, or -mcpu.

> Whatever the answer, is it a generic rule that holds true for submodels of 
> all 
> architectures?

It should always be true, although of course there may be bugs.

> What about 32bit code generated with x86_64 targeted gcc (with -m32)?

If you configure for x86-64, I believe the default architecture will
be MMX, SSE, and SSE2.  I believe that will apply even if you use
-m32.  But I haven't really tested it.

Ian

Reply via email to