1 /* An `rplpoint` represents a replacement point in a compiled method */
11 void *pc; /* machine code PC of this point */
12 rplpoint *hashlink; /* chain to next rplpoint in hash */
13 codeinfo *code; /* codeinfo this point belongs to */
14 rplpoint *target; /* target of the replacement */
16 u1 regalloc[1]; /* VARIABLE LENGTH! */
19 /* An `executionsstate` represents the state of a thread as it reached */
20 /* an replacement point or is about to enter one. */
22 #define MD_EXCSTATE_NREGS 32
23 #define MD_EXCSTATE_NCALLEESAVED 8
25 struct executionstate {
27 u8 regs[MD_EXCSTATE_NREGS];
28 u8 savedregs[MD_EXCSTATE_NCALLEESAVED]; /* or read from frame */
32 java_objectheader *locked; /* XXX maybe just leave it in frame? */
35 /* `sourcestate` will probably only be used for debugging */
47 /* vim: noet ts=4 sw=4