fpc/compiler/jvm
Jonas Maebe 00cb8f5725 * made maxregs related information protected instead of private in trgobj,
as well as insert_regalloc_info_all()
  + "register" allocator for the jvm target, which simply replaces every
    virtual register with a temp. This is done for all register types in
    one pass, so that the temps can be easily reused without worrying
    about conflicts. Small optimisation: alloc/store/dealloc/load
    sequences for a single reg are removed (many of these are generated
    because most cg nodes return their value in a register which is then
    immediately consumed by the parent)
  * map addressregisters to integer registers with size R_SUBD, because
    they require one stackslot (the subregister type is used by rgcpu
    to determine the size of the temp it has to allocate)

git-svn-id: branches/jvmbackend@18316 -
2011-08-20 07:38:11 +00:00
..
aasmcpu.pas + basic implementation: support for loading jvm-specific operands 2011-08-20 07:35:53 +00:00
cgcpu.pas * made maxregs related information protected instead of private in trgobj, 2011-08-20 07:38:11 +00:00
cpubase.pas + cpubase for jvm: opcodes, basic register definitions, ... 2011-08-20 07:35:32 +00:00
cpuinfo.pas * fixed compilation 2011-08-20 07:36:22 +00:00
cpunode.pas + jvm (cpu architecure) and java ("OS"/target) identifiers 2011-08-20 07:37:33 +00:00
cpupara.pas + jvm parameter manager: on the caller side, all arguments are pushed 2011-08-20 07:37:12 +00:00
cpupi.pas + tjvmprocinfo, only overrides set_first_temp_offset() and sets it to 2011-08-20 07:37:20 +00:00
cputarg.pas + jvm (cpu architecure) and java ("OS"/target) identifiers 2011-08-20 07:37:33 +00:00
hlcgcpu.pas * moved def2regtyp() from jvm/hlcgcpu to defutil, and extended it to 2011-08-20 07:38:06 +00:00
itcpujas.pas + jvm (cpu architecure) and java ("OS"/target) identifiers 2011-08-20 07:37:33 +00:00
jvmreg.dat + (mostly fake) register definitions for the JVM 2011-08-20 07:35:17 +00:00
rgcpu.pas * made maxregs related information protected instead of private in trgobj, 2011-08-20 07:38:11 +00:00
rjvmcon.inc + (mostly fake) register definitions for the JVM 2011-08-20 07:35:17 +00:00
rjvmnor.inc + (mostly fake) register definitions for the JVM 2011-08-20 07:35:17 +00:00
rjvmnum.inc + (mostly fake) register definitions for the JVM 2011-08-20 07:35:17 +00:00
rjvmrni.inc + (mostly fake) register definitions for the JVM 2011-08-20 07:35:17 +00:00
rjvmsri.inc + (mostly fake) register definitions for the JVM 2011-08-20 07:35:17 +00:00
rjvmstd.inc + (mostly fake) register definitions for the JVM 2011-08-20 07:35:17 +00:00
rjvmsup.inc + (mostly fake) register definitions for the JVM 2011-08-20 07:35:17 +00:00
tgcpu.pas * made setfirsttemp() virtual and override it in jvm/tgcpu so it no 2011-08-20 07:36:14 +00:00