[kaffe] jit3, slots and float args
Svante Arvedahl
exsvaar@softlab.se
Tue, 10 Sep 2002 14:02:30 +0200
Hi!
Maybe someone can help me with this. In my work of porting the jit3 to
IA-64 I have translated the most important icode instructions. I'm
trying to run the HelloWorldApp but the floating point arguments are
confusing me.
When translating java/util/HashMap.<init>(IF)V I get three input
arguments. The macro METHOD_ARG_TYPE tells me that the first one is an
int, the second a float and the third a '(' (reference?). Do these
correspond to the slots localinfo[0].slot, localinfo[1].slot and
localinfo[2].slot in that order?
That's what I was presuming but the integer load 'iload' in the
following debug output of the first basic block in HashMap is trying to
access localinfo[1].slot which is associated with the float argument.
@0: aload 0
@1: invokespecial 149
@4: iload 1
@5: iflt 14
Likewise the float load 'fload' in the next basic block is trying to
access the localinfo[2].slot, which is associated with the third
argument and thus not a float value.
@8: fload 2
@9: fconst 0.000000
@10: fcmpg
@11: ifgt 22
Could someone help me sort things out here?
Thanx
/Svante