This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: egcs-1.0.2 wrongly detect a Pentium II as a i386 on SCO5 - patch included


| On Mon, 27 Apr 1998, Joao Cardoso wrote:
|
| : On sco-3.2v5.0.4 `configure' wrongly detect a Pentium II as a i386.
|
| This is actually half correct.

Well if you look at config.guess, you will see that it gets the information
from /usr/options/cb.name if it exists, and /bin/uname -X if it does not.
Somebody who has a SCO system with a Pentium-II will have to supply us with the
appropriate lines to use, since there is no telling what an OS might choose to
report.

| : I don't know if this has any implications on code generation. A simple
| :  `gcc -S foo.c' report `-mcpu=i386 -march=pentium'
|
| The -march= is what really matters.  All i[3456]86 based chips are, at their
| base, considered `i386' processors, but the architecture can be set for code
| generation as gcc does above.  The actual architecture name is i386, not
| i586 or i686.
|
| When it comes down to it, a machine name such as `i586-pc-linux' is
| incorrect.  `configure' just happily accepts it and treats it as
| `i386-pc-linux'.  Same goes for SCO.

Wrong.  If you configure for i386-pc-linux, it will default the scheduling
parameters to be an i386.  If you configure for i585-pc-linux, it will default
the scheduling parameters to be a Pentium classic.  Similarly for
i686-pc-linux, it will default for a Pentium-{Pro,II}.  For example, when
compiling for a i386, the compiler believes the fastest way to push a value in
memory is to execute a single push instruction, while for all machines higher
than a i386, it loads the value into a register and then does a push.

--
Michael Meissner, Cygnus Solutions (Massachusetts office)
4th floor, 955 Massachusetts Avenue, Cambridge, MA 02139, USA
meissner@cygnus.com,	617-354-5416 (office),	617-354-7161 (fax)



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]