CACAO
Functions
emit.cpp File Reference

Go to the source code of this file.

Functions

s4 emit_load (jitdata *jd, instruction *iptr, varinfo *src, s4 tempreg)
 
s4 emit_load_low (jitdata *jd, instruction *iptr, varinfo *src, s4 tempreg)
 
s4 emit_load_high (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_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_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)
 
void emit_trap_compiler (codegendata *cd)
 
void emit_abstractmethoderror_trap (codegendata *cd)
 
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_verbosecall_enter (jitdata *jd)
 Emit profiling code for method frequency counting. More...
 
void emit_verbosecall_exit (jitdata *jd)
 

Function Documentation

void emit_abstractmethoderror_trap ( codegendata cd)

Definition at line 577 of file emit.cpp.

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

Definition at line 462 of file emit.cpp.

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

Definition at line 478 of file emit.cpp.

void emit_arraystore_check ( codegendata cd,
instruction iptr 
)

Definition at line 493 of file emit.cpp.

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

Definition at line 341 of file emit.cpp.

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

Definition at line 509 of file emit.cpp.

void emit_copy ( jitdata jd,
instruction iptr 
)

Definition at line 226 of file emit.cpp.

void emit_exception_check ( codegendata cd,
instruction iptr 
)

Definition at line 556 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 319 of file emit.cpp.

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

Definition at line 302 of file emit.cpp.

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

Definition at line 67 of file emit.cpp.

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

Definition at line 150 of file emit.cpp.

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

Definition at line 116 of file emit.cpp.

void emit_monitor_enter ( jitdata jd,
int32_t  syncslot_offset 
)

Generates synchronization code to enter a monitor.

Definition at line 616 of file emit.cpp.

void emit_monitor_exit ( jitdata jd,
int32_t  syncslot_offset 
)

Generates synchronization code to leave a monitor.

Definition at line 675 of file emit.cpp.

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

Definition at line 540 of file emit.cpp.

void emit_recompute_pv ( codegendata cd)

Emit code to recompute the procedure vector.

Definition at line 604 of file emit.cpp.

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

Definition at line 184 of file emit.cpp.

uint32_t emit_trap ( codegendata cd)

Definition at line 589 of file emit.cpp.

void emit_trap_compiler ( codegendata cd)

Definition at line 572 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 794 of file emit.cpp.

void emit_verbosecall_exit ( jitdata jd)

Definition at line 912 of file emit.cpp.