CACAO
Macros | Functions
emit.cpp File Reference

Go to the source code of this file.

Macros

#define REG_PV   REG_PV_CALLEE
 

Functions

s4 emit_load (jitdata *jd, instruction *iptr, varinfo *src, s4 tempreg)
 
void emit_store (jitdata *jd, instruction *iptr, varinfo *dst, s4 d)
 
void emit_copy (jitdata *jd, instruction *iptr)
 
void emit_iconst (codegendata *cd, s4 d, s4 value)
 
void emit_lconst (codegendata *cd, s4 d, s8 value)
 
void emit_icmp_imm (codegendata *cd, int reg, int32_t value)
 Emits code updating the condition register by comparing one integer register to an immediate integer value. More...
 
void emit_branch (codegendata *cd, s4 disp, s4 condition, s4 reg, u4 opt)
 
void emit_beq_xcc (codegendata *cd, basicblock *target)
 
void emit_bne_xcc (codegendata *cd, basicblock *target)
 
void emit_blt_xcc (codegendata *cd, basicblock *target)
 
void emit_bge_xcc (codegendata *cd, basicblock *target)
 
void emit_bgt_xcc (codegendata *cd, basicblock *target)
 
void emit_ble_xcc (codegendata *cd, basicblock *target)
 
void emit_arithmetic_check (codegendata *cd, instruction *iptr, s4 reg)
 
void emit_arrayindexoutofbounds_check (codegendata *cd, instruction *iptr, s4 s1, s4 s2)
 
void emit_arraystore_check (codegendata *cd, instruction *iptr)
 
void emit_classcast_check (codegendata *cd, instruction *iptr, s4 condition, s4 reg, s4 s1)
 
void emit_nullpointer_check (codegendata *cd, instruction *iptr, s4 reg)
 
void emit_exception_check (codegendata *cd, instruction *iptr)
 
uint32_t emit_trap (codegendata *cd)
 
void emit_recompute_pv (codegendata *cd)
 Emit code to recompute the procedure vector. More...
 
void emit_monitor_enter (jitdata *jd, int32_t syncslot_offset)
 Generates synchronization code to enter a monitor. More...
 
void emit_monitor_exit (jitdata *jd, int32_t syncslot_offset)
 Generates synchronization code to leave a monitor. More...
 
void emit_patcher_stubs (jitdata *jd)
 
void emit_verbosecall_enter (jitdata *jd)
 Emit profiling code for method frequency counting. More...
 
void emit_verbosecall_exit (jitdata *jd)
 

Macro Definition Documentation

#define REG_PV   REG_PV_CALLEE

Definition at line 61 of file emit.cpp.

Function Documentation

void emit_arithmetic_check ( codegendata cd,
instruction iptr,
s4  reg 
)

Definition at line 484 of file emit.cpp.

void emit_arrayindexoutofbounds_check ( codegendata cd,
instruction iptr,
s4  s1,
s4  s2 
)

Definition at line 500 of file emit.cpp.

void emit_arraystore_check ( codegendata cd,
instruction iptr 
)

Definition at line 518 of file emit.cpp.

void emit_beq_xcc ( codegendata cd,
basicblock target 
)

Definition at line 444 of file emit.cpp.

void emit_bge_xcc ( codegendata cd,
basicblock target 
)

Definition at line 459 of file emit.cpp.

void emit_bgt_xcc ( codegendata cd,
basicblock target 
)

Definition at line 464 of file emit.cpp.

void emit_ble_xcc ( codegendata cd,
basicblock target 
)

Definition at line 469 of file emit.cpp.

void emit_blt_xcc ( codegendata cd,
basicblock target 
)

Definition at line 454 of file emit.cpp.

void emit_bne_xcc ( codegendata cd,
basicblock target 
)

Definition at line 449 of file emit.cpp.

void emit_branch ( codegendata cd,
s4  disp,
s4  condition,
s4  reg,
u4  opt 
)

Definition at line 274 of file emit.cpp.

void emit_classcast_check ( codegendata cd,
instruction iptr,
s4  condition,
s4  reg,
s4  s1 
)

Definition at line 534 of file emit.cpp.

void emit_copy ( jitdata jd,
instruction iptr 
)

Definition at line 155 of file emit.cpp.

void emit_exception_check ( codegendata cd,
instruction iptr 
)

Definition at line 585 of file emit.cpp.

void emit_icmp_imm ( codegendata cd,
int  reg,
int32_t  value 
)

Emits code updating the condition register by comparing one integer register to an immediate integer value.

Definition at line 256 of file emit.cpp.

void emit_iconst ( codegendata cd,
s4  d,
s4  value 
)

Definition at line 220 of file emit.cpp.

void emit_lconst ( codegendata cd,
s4  d,
s8  value 
)

Definition at line 239 of file emit.cpp.

s4 emit_load ( jitdata jd,
instruction iptr,
varinfo src,
s4  tempreg 
)

Definition at line 70 of file emit.cpp.

void emit_monitor_enter ( jitdata jd,
int32_t  syncslot_offset 
)

Generates synchronization code to enter a monitor.

Definition at line 631 of file emit.cpp.

void emit_monitor_exit ( jitdata jd,
int32_t  syncslot_offset 
)

Generates synchronization code to leave a monitor.

Definition at line 692 of file emit.cpp.

void emit_nullpointer_check ( codegendata cd,
instruction iptr,
s4  reg 
)

Definition at line 569 of file emit.cpp.

void emit_patcher_stubs ( jitdata jd)

Definition at line 741 of file emit.cpp.

void emit_recompute_pv ( codegendata cd)

Emit code to recompute the procedure vector.

Definition at line 619 of file emit.cpp.

void emit_store ( jitdata jd,
instruction iptr,
varinfo dst,
s4  d 
)

Definition at line 116 of file emit.cpp.

uint32_t emit_trap ( codegendata cd)

Definition at line 601 of file emit.cpp.

void emit_verbosecall_enter ( jitdata jd)

Emit profiling code for method frequency counting.

Emit profiling code for basicblock frequency counting. Emit profiling code to start CPU cycle counting. Emit profiling code to stop CPU cycle counting.

Definition at line 868 of file emit.cpp.

void emit_verbosecall_exit ( jitdata jd)

Definition at line 998 of file emit.cpp.