+/* branch_label_ref_t *********************************************************/
+
+struct branch_label_ref_t {
+ s4 mpc; /* position in code segment */
+ s4 label; /* label number */
+ s4 condition; /* conditional branch condition */
+ s4 reg; /* register number to check */
+ u4 options; /* branch options */
+ listnode linkage;
+};
+
+
+/* jumpref ********************************************************************/
+
+struct jumpref {
+ s4 tablepos; /* patching position in data segment */
+ basicblock *target; /* target basic block */
+ jumpref *next; /* next element in jumpref list */
+};
+
+
+/* dataref ********************************************************************/
+
+struct dataref {
+ s4 datapos; /* patching position in generated code */
+ dataref *next; /* next element in dataref list */
+};
+
+
+/* patchref *******************************************************************/
+
+struct patchref {
+ s4 branchpos; /* relative offset to method entrypoint */
+ s4 disp; /* displacement of ref in the data segment */
+ functionptr patcher; /* patcher function to call */
+ voidptr ref; /* reference passed */
+/* listnode linkage; */
+ patchref *next;
+};
+
+
+/* linenumberref **************************************************************/
+
+struct linenumberref {
+ s4 tablepos; /* patching position in data segment */
+ s4 linenumber; /* line number, used for inserting into the */
+ /* table and for validity checking */
+ /* -1......start of inlined body */
+ /* -2......end of inlined body */
+ /* <= -3...special entry with methodinfo * */
+ /* (see doc/inlining_stacktrace.txt) */
+ ptrint targetmpc; /* machine code program counter of first */
+ /* instruction for given line */
+ /* NOTE: for linenumber <= -3 this is a the */
+ /* (methodinfo *) of the inlined method */
+ linenumberref *next; /* next element in linenumberref list */
+};
+
+
+/* methodtree_element *********************************************************/