[kaffe] More mipsel jit3

Casey Marshall rsdio at metastatic.org
Tue Mar 9 11:55:03 PST 2004

Hash: SHA1

>>>>> "Kevin" == Kevin D Kissell <kevink at mips.com> writes:

Kevin> That's not at all surprising.  The trickiest thing that I had
Kevin> to fix to get the kaffe interpreter working for MIPS was to fix
Kevin> the calling convention stuff.  Argument passing in MIPS *is*
Kevin> pretty baroque, and worse, there are variants that we'll have
Kevin> to deal with when we try to support 64-bit MIPS/Linux with
Kevin> kaffe.  Do you have decent documentation on the MIPS ABI?  I've
Kevin> probably got some ancient documents in electronic format around
Kevin> here somewhere.  If you've got Dom Sweetman's "See MIPS Run"
Kevin> (recommended reading for MIPS hackers everywhere), it's covered
Kevin> pretty well in chapter 10.

Yeah, some documentation might help ;)

I think what's happening is a push_int (or reference, or something) is
being called, which causes push_float (when we get to that point for
calling soft_fcmpl) to push its arguments into registers i5 and i6
because `pushed_int' has been set to `true', but soft_fcmpl expects
them in f12 and f14.

So either (1) the call to push_int preceding this is bogus, or (2)
that call needs to be followed by a popargs, but isn't.

- -- 
Casey Marshall || rsdio at metastatic.org
Version: GnuPG v1.2.3 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.7 <http://mailcrypt.sourceforge.net/>


More information about the kaffe mailing list