[kaffe] JamVM on ARM (XScale)
rob.lougher at gmail.com
Tue Oct 12 11:27:18 PDT 2004
If anybody is interested I've hacked the calling-convention for ARM on
JamVM to assume soft-fp. Note, this is a pure guess, as I don't have
access to an ARM machine until the weekend!
P.S. The attached files go into src/arm...
P.P.S. For anybody who's interested in BE machines, I believe doubles
are "pure-big-endian", unlike on LE ARMs (each word is BE, but the
words are in LE order). Copying the class_md.h file from src/powerpc
to src/arm MAY work, if my guess is again correct. I can test some of
this on the weekend, but not before :(
On Tue, 12 Oct 2004 09:57:02 +0100, S. Meslin-Weber
<steph at tangency.co.uk> wrote:
> Hi Rob,
> On Mon, Oct 11, 2004 at 12:46:02PM +0100, Robert Lougher wrote:
> > The problems that could arise are that I assume floating-point
> > emulation is enabled in the kernel (affects calling-convention). I
> Ah, this could cause issues with some linux distributions for ARM
> (familiar and OpenZaurus) which are switching to soft-float and not
> relying on the kernel to do floating point handling. Note that hybrid
> systems with both types requires a set of core libraries for each
> *-float so on embedded platforms only one should really be there.
> The rationale for this is convincing: 1000% benchmarked improvement in
> float speed. I've had this explained to me (in simple terms):
> "with hard float, a kernel exception gets launched ... which needs
> saving status registers and changing privilege rings ... then jump
> into kernel ... then handle that ... then jump out of kernel ...
> that's slooooooooooow"
> It'd be nice to be able to use JamVM (and other jvms) on these embedded
> distributions too :)
> I've verified that SableVM works fine using soft-float too :)
> Stephane Meslin-Weber Email: steph at tangency.co.uk
> Software Engineer Web: http://odonata.tangency.co.uk
More information about the kaffe