CACAO
|
Go to the source code of this file.
Macros | |
#define | TYPECHECK_NO_STATISTICS |
#define | EXCEPTION do { return false; } while (0) |
#define | VERIFY_ERROR(msg) assert(false) |
#define | CHECK_LOCAL_TYPE(index, t) assert(jd->var[(index)].type == (t)); |
#define | STORE_LOCAL(t, index) |
#define | STORE_LOCAL_2_WORD(t, index) |
#define | REACH_BLOCK(target) |
#define | REACH(target) REACH_BLOCK((target).block) |
#define | TYPECHECK_INT(v) assert(jd->var[(v)].type == TYPE_INT) |
#define | TYPECHECK_ADR(v) assert(jd->var[(v)].type == TYPE_ADR) |
#define | TYPECHECK_TYPEINFERER |
#define | TYPECHECK_TYPEINFERER |
#define | OP1 VAR(state->iptr->sx.s23.s2.args[0]) |
#define | TYPECHECK_TYPEINFERER |
#define | OP1 state->iptr->sx.s23.s2.args[0] |
#define | TYPECHECK_TYPEINFERER |
#define | TYPECHECK_TYPEINFERER |
#define | STATE state |
#define | METHOD (state->m) |
#define | IPTR iptr |
#define | BPTR (state->bptr) |
Functions | |
static bool | handle_fieldaccess (verifier_state *state, varinfo *instance, varinfo *value) |
static bool | handle_invocation (verifier_state *state) |
static bool | handle_builtin (verifier_state *state) |
static bool | handle_multianewarray (verifier_state *state) |
static bool | handle_basic_block (verifier_state *state) |
bool | typecheck_infer_types (jitdata *jd) |
#define BPTR (state->bptr) |
Definition at line 66 of file typecheck-typeinferer.cpp.
#define EXCEPTION do { return false; } while (0) |
Definition at line 63 of file typecheck-typeinferer.cpp.
#define IPTR iptr |
#define METHOD (state->m) |
#define OP1 VAR(state->iptr->sx.s23.s2.args[0]) |
#define OP1 state->iptr->sx.s23.s2.args[0] |
#define REACH | ( | target | ) | REACH_BLOCK((target).block) |
Definition at line 87 of file typecheck-typeinferer.cpp.
#define REACH_BLOCK | ( | target | ) |
Definition at line 79 of file typecheck-typeinferer.cpp.
#define STATE state |
#define STORE_LOCAL | ( | t, | |
index | |||
) |
Definition at line 69 of file typecheck-typeinferer.cpp.
#define STORE_LOCAL_2_WORD | ( | t, | |
index | |||
) |
Definition at line 74 of file typecheck-typeinferer.cpp.
#define TYPECHECK_ADR | ( | v | ) | assert(jd->var[(v)].type == TYPE_ADR) |
Definition at line 90 of file typecheck-typeinferer.cpp.
#define TYPECHECK_INT | ( | v | ) | assert(jd->var[(v)].type == TYPE_INT) |
Definition at line 89 of file typecheck-typeinferer.cpp.
#define TYPECHECK_NO_STATISTICS |
Definition at line 57 of file typecheck-typeinferer.cpp.
#define TYPECHECK_TYPEINFERER |
#define TYPECHECK_TYPEINFERER |
#define TYPECHECK_TYPEINFERER |
#define TYPECHECK_TYPEINFERER |
#define TYPECHECK_TYPEINFERER |
#define VERIFY_ERROR | ( | msg | ) | assert(false) |
Definition at line 64 of file typecheck-typeinferer.cpp.
|
static |
Definition at line 230 of file typecheck-typeinferer.cpp.
|
static |
Definition at line 169 of file typecheck-typeinferer.cpp.
|
static |
Definition at line 107 of file typecheck-typeinferer.cpp.
|
static |
Definition at line 137 of file typecheck-typeinferer.cpp.
|
static |
Definition at line 200 of file typecheck-typeinferer.cpp.
bool typecheck_infer_types | ( | jitdata * | jd | ) |
Definition at line 357 of file typecheck-typeinferer.cpp.