Subject: Re: Why doesn't the Kernel compile with the -m option?
To: John A. Maier <root@beta.datastorm.com>
From: Rob Windsor <windsor@punk.hedgehog.com>
List: netbsd-users
Date: 04/23/1997 21:00:33
Verily did "John A. Maier" write:

> I am sitting here compiling 1.1 on a i486.  I noticed that there is no -m486 
>option in the compiling options, why?

punk$ uname -a
NetBSD punk 1.1 NetBSD 1.1 (PUNK) #8: Sun Feb  4 03:31:58 PST 1996     windsor@punk:/usr/local/src/NetBSD/src/sys/arch/i386/compile/PUNK i386

A 486Dx4/100.  "i486" is a linux-ism.  For the rest of the world, "i386"
covers the 32-bit x86 family.

punk$ man gcc
[...]
              i386 Options
              -m486 -mno-486 -msoft-float -mno-fp-ret-in-387
[...]
       These  `-m' options are defined for the Intel 80386 family
       of computers:

       -m486

       -mno-486
              Control whether or not code is optimized for a  486
              instead  of  an 386.  Code generated for a 486 will
              run on a 386 and vice versa.

It's there, it's been there for a long time.

> I would assume for a i386 there would be a -m386 option and there is no -m586
> option as of 1.1 (well not with the default compiler).

Uhmm, -m386 would be the default behaviour, so it would be needless.

As for -m586, go ask the gnu guys.

> Is this going to change with the next release for Intel based NetBSD machines
>?

Since the compiler is a gnu product, you might hit them up for options that
you feel are missing.

> An why the request for the CPU type in the config file?

Take a peek at /usr/src/sys/arch/i386/i386/{locore.s,machdep.c}

If you want abstracts describing what the source code does here, I'm sure
that others on the mailing list can describe them better than I could.

-- Rob
----------------------------------------
Internet: windsor@pobox.com      Life: Rob@Sunnyvale.California.USA.Earth
"Da Web": http://pobox.com/~windsor/

"Ain't much distance 'tween a pat on the back and a kick in the pants."
    -- David Lee Roth (1990), `The Dogtown Shuffle'