ARM GCC compiler issue

Bruce O'Neel beoneel at bluewin.ch
Tue Feb 26 10:12:09 UTC 2002


Hi,

Have you looked at the fpe that comes with NetBSD?  It seems to be
used with the sh3, arm26, and arm32 ports.  One uses -msoft-float as a
flag to gcc and then the calls for floating point are emulated.  The
file src.tgz at
ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-1.5.2/source/sets/ in the
directory usr/src/lib/libc/softfloat has the emulator.  I've been
poking around with this on a 68k system since the emulator for LC040
chips seems broken.

I doubt that the emulator depends on anything NetBSD specific. 

cheers

bruce

Tim Rowledge writes:
 > "Ohshima, Yoshiki" <Yoshiki.Ohshima at disney.com> is claimed by the authorities to have written:
 > 
 > >   Hello,
 > > 
 > >   Thank you for everyone for the suggestions.
 > > 
 > >   I've created a separate .c file, which I call interp-f.c,
 > > for the following functions
 > > 
 > > 	double loadFloatOrIntFrom(int floatOrInt);
 > > 	int primitiveFloatAddtoArg(int rcvrOop, int argOop);
 > > 	int primitiveFloatDividebyArg(int rcvrOop, int argOop);
 > > 	int primitiveFloatEqualtoArg(int rcvrOop, int argOop);
 > > 	int primitiveFloatGreaterthanArg(int rcvrOop, int argOop);
 > > 	int primitiveFloatLessthanArg(int rcvrOop, int argOop);
 > > 	int primitiveFloatMultiplybyArg(int rcvrOop, int argOop);
 > > 	int primitiveFloatSubtractfromArg(int rcvrOop, int argOop);
 > Excellent idea. If you could zip it up with whichever .h files etc it
 > needs and send me a copy I can pass it on when discussing this bug with
 > People Who Seem To Know. Much quicker and simpler than the entire vm
 > codebase.
 > 
 > 
 > >   Then, I tried to replace "mvfd f4, f0" lines in assembly
 > > with "mov r0, r0" (the mnemonic in gcc generated asm is
 > > "mvfd").  The executable doesn't crash with "illegal
 > > instruction" but doesn't run correctly either.
 > This might be a case of changing too many instances of the movfd - I'm
 > guessing that some of them need to be there and others don't. 
 > The basic explanation that has been passed to me is that the FP emulator
 > is not properly setup when the instruction is issued and that the Acorn
 > FP code was able to cope by some miracle. Since then (about early last
 > year I think?) a 'new improved' FP emulator has been released that
 > doesn't work. So much for improved....
 > 
 > tim
 > -- 
 > Tim Rowledge, tim at sumeru.stanford.edu, http://sumeru.stanford.edu/tim
 > Strange OpCodes: FD: Failsafe Disarmed
 > 
 > 

-- 
Of course it runs NetBSD

Bruce O'Neel                       phone:  +41 22 950 91 57
INTEGRAL Science Data Centre               +41 22 950 91 00 (switchb.)
Chemin d'Ecogia 16                 fax:    +41 22 950 91 35
CH-1290 VERSOIX                    e-mail: Bruce.Oneel at obs.unige.ch
Switzerland                        WWW:    http://isdc.unige.ch/




More information about the Squeak-dev mailing list