[M3devel] i386 vs. i486 vs. i586 vs. i686?

Jay K jay.krell at cornell.edu
Mon Aug 17 13:48:30 CEST 2009


At some point I'd like to merge m3cc/src/platforms.quake and m3gdb/src/platforms.quake, and put the result in cm3cfg.common, or even cm3. A small sticking point here is which of [3-6]i86 to use in various places.
 
 
i386 is pretty darn old (1985?), missing some useful instructions, and I believe not particularly well supported by anyone any longer.
Beyond that I'm not sure.
I don't think i486 has been available for sale in over 10 years, but maybe in embedded systems??
I believe i686 encompasses Pentium Pro, Pentium II, Pentium III, Pentium IV, Core, Core 2, etc.
I think I bought a Pentium in 1995.
However I have two machines that I'm not sure are i686.
 
Hm, er, I guess just one machine.
 
I thought the "Pentium M" sticker might imply i586, but there is evidence otherwise:
 
The OpenBSD/i386 Hudson machine:
$ sysctl | grep hw
hw.machine=i386
hw.model=Intel(R) Pentium(R) M processor 1.70GHz ("GenuineIntel" 686-class)
hw.ncpu=1
hw.product=HP Compaq nc4010 (PF672AA#ABA)
$
 
a "Fit PC 2.0", doesn't get much use:
 
jay at xlin ~ $ uname -a
Linux xlin 2.6.25-gentoo-r7 #5 Sun Oct 5 18:59:56 Local time zone must be set--s
ee zic manua i586 Geode(TM) Integrated Processor by AMD PCS AuthenticAMD GNU/Lin
ux
jay at xlin ~ $

 
That really might might not be "i686".
 
 
I guess, er, um, for m3gdb, there's no point in going past i386?
The point is the target really, not the host.
gdb is not performance sensitive.
gcc is probably always going to be slow, but it can produce faster/slower code.
 
 
This stuff is only used currently for cross builds, though
it might be reasonable to use it for native builds too.
Like, you know, if I build on a Core 2, you probably don't want
the cm3cg producing code that doesn't work on a Pentium IV or somesuch.
 
 
  - Jay


More information about the M3devel mailing list