Help for JIT

Arkadev Chattopadhyay arkadev_c at
Mon Aug 13 08:39:29 PDT 2001


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
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..


Do You Yahoo!?
Send instant messages & get email alerts with Yahoo! Messenger.

More information about the kaffe mailing list