|
#define | SBRSTART typeinfo.elementclass.any |
|
#define | CHECK_BASIC_TYPE(expected, actual) |
|
#define | REQUIRE(num) |
|
#define | CHECKOVERFLOW |
|
#define | GET_NEW_INDEX(sd, new_varindex) |
|
#define | RELEASE_INDEX(sd, varindex) |
|
#define | GET_NEW_VAR(sd, newvarindex, newtype) |
|
#define | IS_INOUT(sp) (sd.var[(sp)->varnum].flags & INOUT) |
|
#define | IS_PREALLOC(sp) (sd.var[(sp)->varnum].flags & PREALLOC) |
|
#define | IS_TEMPVAR(sp) |
|
#define | IS_LOCALVAR_SD(sd, sp) ((sp)->varnum < (sd).localcount) |
|
#define | IS_LOCALVAR(sp) IS_LOCALVAR_SD(sd, (sp)) |
|
#define | SET_TEMPVAR(sp) |
|
#define | SET_PREALLOC(sp) |
|
#define | CLR_S1 (iptr->s1.varindex = -1) |
|
#define | USE_S1(type1) |
|
#define | USE_S1_ANY |
|
#define | USE_S1_S2(type1, type2) |
|
#define | USE_S1_S2_ANY_ANY |
|
#define | USE_S1_S2_S3(type1, type2, type3) |
|
#define | POPANY |
|
#define | POP_S1(type1) |
|
#define | POP_S1_ANY |
|
#define | POP_S1_S2(type1, type2) |
|
#define | POP_S1_S2_ANY_ANY |
|
#define | POP_S1_S2_S3(type1, type2, type3) |
|
#define | CLR_SX (iptr->sx.val.l = 0) |
|
#define | CLR_DST (iptr->dst.varindex = -1) |
|
#define | DST(typed, index) |
|
#define | DST_LOCALVAR(typed, index) |
|
#define | COPY_VAL_AND_TYPE_VAR(sv, dv) |
|
#define | COPY_VAL_AND_TYPE(sd, sindex, dindex) COPY_VAL_AND_TYPE_VAR((sd).var + (sindex), (sd).var + (dindex)) |
|
#define | OP0_1(typed) |
|
#define | OP1_0_ANY |
|
#define | OP1_BRANCH(type1) |
|
#define | OP1_1(type1, typed) |
|
#define | OP2_1(type1, type2, typed) |
|
#define | OP0_0 |
|
#define | OP0_BRANCH |
|
#define | OP1_0(type1) |
|
#define | OP2_0(type1, type2) |
|
#define | OP2_BRANCH(type1, type2) |
|
#define | OP2_0_ANY_ANY |
|
#define | OP3_0(type1, type2, type3) |
|
#define | LOAD(type1, index) |
|
#define | STORE(type1, index) |
|
#define | DUP_SLOT(sp) |
|
#define | MOVE_UP(sp) |
|
#define | COPY_UP(sp) |
|
#define | COPY_DOWN(s, d) |
|
#define | MOVE_TO_TEMP(sp) |
|
#define | BRANCH_TARGET(bt, tempbptr) |
|
#define | BRANCH(tempbptr) BRANCH_TARGET(iptr->dst, tempbptr) |
|
#define | NEWSTACK(s, v, n) |
|
#define | NEWSTACKn(s, n) NEWSTACK(s,UNDEFVAR,n) |
|
#define | NEWSTACK0(s) NEWSTACK(s,UNDEFVAR,0) |
|
#define | RELOCATE(index) |
|
|
static void | stack_create_invars (stackdata_t *sd, basicblock *b, stackelement_t *curstack, int stackdepth) |
|
static void | stack_create_invars_from_outvars (stackdata_t *sd, basicblock *b) |
|
bool | stack_init (void) |
|
static void | stack_grow_variable_array (stackdata_t *sd, s4 num) |
|
static void | stack_append_block (stackdata_t *sd, basicblock *b) |
|
static basicblock * | stack_clone_block (stackdata_t *sd, basicblock *b) |
|
static void | stack_create_locals (stackdata_t *sd, basicblock *b) |
|
static void | stack_merge_locals (stackdata_t *sd, basicblock *b) |
|
static basicblock * | stack_check_invars (stackdata_t *sd, basicblock *b, stackelement_t *curstack, int stackdepth) |
|
static basicblock * | stack_check_invars_from_outvars (stackdata_t *sd, basicblock *b) |
|
static stackelement_t * | stack_create_instack (stackdata_t *sd) |
|
static basicblock * | stack_mark_reached (stackdata_t *sd, basicblock *b, stackelement_t *curstack, int stackdepth) |
|
static basicblock * | stack_mark_reached_from_outvars (stackdata_t *sd, basicblock *b) |
|
static bool | stack_reach_next_block (stackdata_t *sd) |
|
static bool | stack_reach_handlers (stackdata_t *sd) |
|
bool | stack_reanalyse_block (stackdata_t *sd) |
|
static void | stack_change_to_tempvar (stackdata_t *sd, stackelement_t *sp, instruction *ilimit) |
|
static void | stack_init_javalocals (stackdata_t *sd) |
|
bool | stack_analyse (jitdata *jd) |
|
void | stack_javalocals_store (instruction *iptr, s4 *javalocals) |
|