Subject: Re: Sun 3/50 and -current
To: Aaron J. Grier <email@example.com>
From: Frederick Bruckman <firstname.lastname@example.org>
Date: 03/27/2002 13:24:35
In article <20020327102101.G2202@goldberry.poofy.goof.com>,
email@example.com (Aaron J. Grier) writes:
> On Wed, Mar 27, 2002 at 07:58:33AM -0700, Rick Kelly wrote:
>> So we don't build GCC to minimally default to 68020?
We do, on m68k. Actually, we seem to be currently building
for *only* 68020 -- "-m68020", and not "-m68020-40" as I said
before. The compiled code won't necessarily work on 68040...
The default target is defined in "gnu/usr.bin/gcc/arch/m68k/tm.h"
as 'MASK_68020|MASK_68881|MASK_BITFIELD'. I believe that should be
'|MASK_68040'? Like, for example, look at this, from
/* fmovecr must be emulated on the 68040 and 68060, so it shouldn't be
used at all on those chips. */
if (TARGET_68040 || TARGET_68060)
The disputed instructions (should be) rarely used floating point
instructions, so it can't make much of difference in performance
either way. (If they weren't rarely used, we'd be seeing a lot more
SIGILL core dumps on 68040's.)
> if we did that, what would the sun2 (68010) users do? ;)
They get a different compiler and different binaries. They're
treated as a different MACHINE_ARCH, m68000, even though a
"cross-build" to or from m68k only needs the proper switches.
Their default is defined in "gnu/usr.bin/gcc/arch/m68000/tm.h"
as '0', which means -soft-float, -no-bitfield, no nothing.