|
| #define | MAYBE_UNUSED __attribute__((unused)) |
| |
| #define | FETCH_DCELL_T(d_, lo, hi, t_) ({ (d_) = ((Double_Store)(lo)).t_; }) |
| |
| #define | STORE_DCELL_T(d_, lo, hi, t_) ({ (lo) = ((Double_Store)(d_)).low; }) |
| |
| #define | global_sp (THREADOBJECT->_global_sp) |
| |
| #define | CLEAR_global_sp (global_sp=NULL) |
| |
| #define | vm_twoCell2l(hi, lo, d_) FETCH_DCELL_T(d_,lo,hi,l); |
| |
| #define | vm_twoCell2d(hi, lo, d_) FETCH_DCELL_T(d_,lo,hi,d); |
| |
| #define | vm_l2twoCell(d_, hi, lo) STORE_DCELL_T(d_,lo,hi,l); |
| |
| #define | vm_d2twoCell(d_, hi, lo) STORE_DCELL_T(d_,lo,hi,d); |
| |
| #define | vm_Cell2v(cell, v) ((v)=(Cell)(cell)) |
| |
| #define | vm_Cell2b(cell, b) ((b)=(u1)(Cell)(cell)) |
| |
| #define | vm_Cell2i(cell, i) ((i)=(s4)(Cell)(cell)) |
| |
| #define | vm_Cell2aRef(x1, x2) ((x2) = (java_objectheader *)(x1)) |
| |
| #define | vm_Cell2aArray(x1, x2) ((x2) = (java_arrayheader * )(x1)) |
| |
| #define | vm_Cell2aaTarget(x1, x2) ((x2) = (Inst ** )(x1)) |
| |
| #define | vm_Cell2aClass(x1, x2) ((x2) = (classinfo * )(x1)) |
| |
| #define | vm_Cell2acr(x1, x2) ((x2) = (constant_classref *)(x1)) |
| |
| #define | vm_Cell2addr(x1, x2) ((x2) = (u1 * )(x1)) |
| |
| #define | vm_Cell2af(x1, x2) ((x2) = (functionptr )(x1)) |
| |
| #define | vm_Cell2afi(x1, x2) ((x2) = (fieldinfo * )(x1)) |
| |
| #define | vm_Cell2am(x1, x2) ((x2) = (methodinfo * )(x1)) |
| |
| #define | vm_Cell2acell(x1, x2) ((x2) = (Cell * )(x1)) |
| |
| #define | vm_Cell2ainst(x1, x2) ((x2) = (Inst * )(x1)) |
| |
| #define | vm_Cell2auf(x1, x2) ((x2) = (unresolved_field * )(x1)) |
| |
| #define | vm_Cell2aum(x1, x2) ((x2) = (unresolved_method *)(x1)) |
| |
| #define | vm_Cell2avftbl(x1, x2) ((x2) = (vftbl_t * )(x1)) |
| |
| #define | vm_ui2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_v2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_b2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_s2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_i2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_aRef2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_aArray2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_aaTarget2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_aClass2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_acr2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_addr2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_af2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_afi2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_am2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_acell2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_ainst2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_auf2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_aum2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_avftbl2Cell(x1, x2) ((x2) = (Cell)(x1)) |
| |
| #define | vm_Cell2Cell(x1, x2) ((x2)=(Cell)(x1)) |
| |
| #define | IMM_ARG(access, value) (access) |
| |
| #define | VM_IS_INST(inst, n) ((inst) == vm_prim[n]) |
| |
| #define | gen_BBSTART (cd->lastmcodeptr = NULL, append_dispatch(cd)) |
| |
| #define | gen_BBEND (finish_ss(cd)) |
| |
| #define | access_local_int(_offset) ( *(Cell*)(((u1 *)fp) + (_offset)) ) |
| |
| #define | access_local_ref(_offset) ( *(void **)(((u1 *)fp) + (_offset)) ) |
| |
| #define | access_local_cell(_offset) ( *(Cell *)(((u1 *)fp) + (_offset)) ) |
| |
| #define | vm_f2Cell(x1, x2) ((x2) =(((union Cell_float)(x1)).cell)) |
| |
| #define | vm_Cell2f(x1, x2) ((x2) =(((union Cell_float)(x1)).f)) |
| |
|
| void | init_peeptable (void) |
| |
| ptrint | peephole_opt (ptrint inst1, ptrint inst2, Cell peeptable) |
| |
| java_objectheader * | engine (Inst *ip0, Cell *sp, Cell *fp) |
| |
| void | vm_disassemble (Inst *ip, Inst *endp, Inst vm_prim[]) |
| |
| Inst * | vm_disassemble_inst (Inst *ip, Inst vm_prim[]) |
| |
| void | printarg_ui (u4 ui) |
| |
| void | printarg_v (Cell v) |
| |
| void | printarg_b (s4 b) |
| |
| void | printarg_s (s4 s) |
| |
| void | printarg_i (s4 i) |
| |
| void | printarg_l (s8 l) |
| |
| void | printarg_f (float f) |
| |
| void | printarg_d (double d) |
| |
| void | printarg_aRef (java_objectheader *aRef) |
| |
| void | printarg_aArray (java_arrayheader *aArray) |
| |
| void | printarg_aaTarget (Inst **aaTarget) |
| |
| void | printarg_aClass (classinfo *aClass) |
| |
| void | printarg_acr (constant_classref *acr) |
| |
| void | printarg_addr (u1 *addr) |
| |
| void | printarg_af (functionptr af) |
| |
| void | printarg_afi (fieldinfo *afi) |
| |
| void | printarg_am (methodinfo *am) |
| |
| void | printarg_acell (Cell *acell) |
| |
| void | printarg_ainst (Inst *ainst) |
| |
| void | printarg_auf (unresolved_field *auf) |
| |
| void | printarg_aum (unresolved_method *aum) |
| |
| void | printarg_avftbl (vftbl_t *avftbl) |
| |
| void | printarg_Cell (Cell x) |
| |
| void | vm_uncount_block (Inst *ip) |
| |
| block_count * | vm_block_insert (Inst *ip) |
| |
| Cell * | nativecall (functionptr f, methodinfo *m, Cell *sp, Inst *ra, Cell *fp, u1 *addrcif) |
| |
| u1 * | createcalljavafunction (methodinfo *m) |
| |
| Inst * | intrp_asm_handle_exception (Inst *ip, java_objectheader *o, Cell *fp, Cell **new_spp, Cell **new_fpp) |
| |
| void | gen_inst (codegendata *cd, ptrint instr) |
| |
| void | append_dispatch (codegendata *cd) |
| |
| void | finish_ss (codegendata *cd) |
| |
| void | patchersuper_rewrite (Inst *p) |
| |
| void | dynamic_super_init (void) |
| |
| void | dynamic_super_rewrite (codegendata *cd) |
| |