Subject: Re: NetBSD/i386 binaries
To: None <wojtek@wojtek.from.pl>
From: Thor Lancelot Simon <tls@rek.tjls.com>
List: port-i386
Date: 03/08/2001 16:07:22
On Thu, Mar 08, 2001 at 05:10:03PM +0100, wojtek@wojtek.from.pl wrote:
> > >    I presume the answer is "yes", so I guess the binaries installed by
> > >    sysinst from the distribution's *.tgz files differ depending on which
> > >    processor is in the machine?
> > 
> > Not by default. All binaries for 1.5/i386, including packages from the
> > pkgsrc collection, should therefore run on any 1.5/i386. You can build
> 
> all binaries compiled with -mpentiumpro RUNS on any i386!

So what?  All -mpentiumpro changes is the instruction scheduling.

If you compile stuff with -march=pentiumpro -mcpu=pentiumpro 
(-mcpu=pentiumpro is equivalent to -mpentiumpro) the resulting binaries
will use the extra instructions added in newer Intel processors but will 
NOT run on processors that do not implement the entire P6 instruction set.

Notably, such code won't even run on the AMD K6, though it will run on the
Athlon.  Around here, we compile most stuff -mcpu=pentiumpro -march=pentium
for this exact reason.  -march=pentium or -march=pentiumpro can speed up
some code a lot (e.g. certain ciphers) but the resulting code will not run
on older processors.

-- 
Thor Lancelot Simon	                                      tls@rek.tjls.com
    And now he couldn't remember when this passion had flown, leaving him so
  foolish and bewildered and astray: can any man?
						   William Styron