-
Notifications
You must be signed in to change notification settings - Fork 33
jit notes
tcr edited this page Oct 16, 2014
·
1 revision
lj_target_arm.h (included by lj_target.h) — Defines for ARM cpu registers, instructions. ARM-specifics are used in following two files.
- Need to update ARMIns with Thumb instructions.
See https://gist.github.com/tcr/858e5d2000a13375ec15 for distinction between two files:
lj_emit_arm.h (included by lj_asm.c) — Emits instructions.
-
emit_invaidiffs two instrs. crafts instrs fromlj_target_arm.h.
lj_asm_arm.h (included by lj_asm.c) — ARM IR assembler.
- Lots of references to ARM
- Why is
int32_tused everywhere? - Very rarely modifies MCode except for specific grouped functions. That seems to be entirely in emit.
These functions are contained in the specialized lj_asm_*.h header:
asm_head_root_base
asm_head_side_base
asm_stack_check
asm_stack_restore
asm_setup_call_slots
asm_setup_target
asm_tail_prep
asm_ir
asm_tail_fixup
asm_gencall
asm_setupresult
asm_gc_check
asm_loop_fixup
These are used by the header and not elsewhere:
ra_evictset
ra_destreg
ra_leftov
ra_destpair
asm_collectargs
ir_khash
asm_snew
asm_tnew
asm_tdup
asm_gcstep
asm_phi
asm_loop
Goals:
Find all sections which use tracing code and fix them.