ARM GCC bug [Was: Squeak on WinCE HPC MIPS?]
Ohshima, Yoshiki
Yoshiki.Ohshima at disney.com
Tue Jul 16 22:40:52 UTC 2002
Hello,
At Tue, 16 Jul 2002 14:00:43 -0700,
Tommy Thorn wrote:
>
> Tim Rowledge wrote:
> > Clearly you are able to use the optimiser, which is very interesting.
> > Since the problem I recall is effectively an interaction between the
> > compiler screwing up and the float emulator/library, perhaps the Zaurus
> > system has the problem fixed in the float code.
> >
> > Essentially what was happening was that the function prologues involved
> > (for functions using any float operations) tried to execute and
> > instruction that wanted to save a float register. Working systems (the
> > older NetWinder system for example) had flat code that could cope with
> > this, problem ones didn't. We first noticed the problem when NW moved
> > from a hacked Acorn floating point emulator module to a 'newer better'
> > one.
>
> Interesting. Notice that you can log on to skiffcluster1.handhelds.org
> and experiment there (it's essentially an iPaq running Linux). I first
> built Squeak there (for ease of autoconfigure et al) and subsequently
> moved everything home to my cross compilation environment.
>
> I'd assume that gcc generates the same prologue code for any StrongArm
> target, so any difference must be contributed to the native kernel. At
> least this is how it seems to me. I'd still like to hear gcc 3.1
> experiences.
I'm now pretty much confused:-) In my environment, the
problem wasn't exactly in the prologue code and I needed to
factor out the translated C-code for Float manipulating
primitives into a separated .c file and compile it without
optimization.
I can't remember precisely, but it looked like the right
combination of DOUBLE_WORD_ALIGNMENT and DOUBLE_WORD_ORDER
solved it one time... (I can't remember that's the actually
case or not.)
Too less info to write an email to Squeak mailing list,
but this is what I know anyway...
-- Yoshiki
More information about the Squeak-dev
mailing list
|