Help for JIT

Arkadev Chattopadhyay kaffe@rufus.w3.org
Mon, 13 Aug 2001 15:39:29 +0000 (GMT)


Hi,

I'm relatively new to Kaffe. 

I'm looking into the JIT compiler of Kaffe. In the
file "icode.c"( in kaffe/kaffevm/jit/icode.c ) there
are
a lot of utility functions that produce some kind of
an intermediate representation for each bytecode
instruction in a data-structure called "sequence"(
whose definition is in seq.h in the same directory ).
One of the fields of "sequence" is a function pointer
( the tpe of this is "ifunc" ) which is later used for
code generation!
Most of the functions in the load and move sections of
icode.c seem to use function names like
"Have_move_long", "Have_move_float" etc ).

The names seem to appear as macro definitions under
the config directory specific for each architecture
like under x86, sparc etc. The things to which these
get defined do not seem to be function names though(
example spill_Rxx, fspill_Rxx etc )! So how is the
thing working? Obviously I'm missing out on
something.. Would appreciate if someone could help..

Thanks,
Arkadev



__________________________________________________
Do You Yahoo!?
Send instant messages & get email alerts with Yahoo! Messenger.
http://im.yahoo.com/