* src/vm/hashtable.h,
[cacao.git] / src / vm / jit / intrp / java.vmg
index 0c6399e8804ad9dbc1c6094ce4421916193911b4..ca87e61c0611a9267f7d603ea6aff535b2396dc7 100644 (file)
@@ -154,13 +154,12 @@ ACONST ( #aRef -- aRef ) opt
 
 ACONST1 ( #aRef #acrUnused -- aRef ) opt
 
-PATCHER_ACONST ( #aRef #acr -- )
+PATCHER_ACONST ( #aRef #acr ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_aconst((u1 *) (IP - 3));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_aconst((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -168,6 +167,7 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(ACONST1);
 SET_IP(IP - 3);
+patchersuper_rewrite(IP);
 
 ILOAD ( #vLocal -- vResult ) 0x15
 {
@@ -192,6 +192,14 @@ IALOAD ( aArray iIndex -- vResult ) 0x2e
   vResult = access_array_int(aArray, iIndex);
 }
 
+FALOAD ( aArray iIndex -- fResult ) 0x2e
+{
+  CHECK_NULL_PTR(aArray);
+  CHECK_OUT_OF_BOUNDS(aArray, iIndex);
+  ;
+  fResult = access_array_float(aArray, iIndex);
+}
+
 LALOAD ( aArray iIndex -- lResult ) 0x2f
 {
   CHECK_NULL_PTR(aArray);
@@ -255,6 +263,14 @@ IASTORE ( aArray iIndex iValue -- ) 0x4f
   access_array_int(aArray, iIndex) = iValue;
 }
 
+FASTORE ( aArray iIndex fValue -- ) 0x4f
+{
+  CHECK_NULL_PTR(aArray);
+  CHECK_OUT_OF_BOUNDS(aArray, iIndex);
+  ;
+  access_array_float(aArray, iIndex) = fValue;
+}
+
 LASTORE ( aArray iIndex lValue -- ) 0x50
 {
   CHECK_NULL_PTR(aArray);
@@ -831,104 +847,125 @@ LOOKUPSWITCH ( #iNpairs #addrSegment #iOffset #ainstDefault iKey -- ) 0xab
 \       stack0 ;once there is something on the stack
 \       ...
 
-IRETURN ( #vOffsetFP vValue -- vResult ) 0xac
+IRETURN ( #vOffsetFP ... vValue -- vResult ) 0xac
 {
   Inst *new_ip;
   Cell *currentsp = sp;
-  new_ip = (Inst *)access_local_cell(vOffsetFP - SIZEOF_VOID_P);
-  sp = fp;
-  fp = (Cell *)access_local_cell(vOffsetFP);
-  CLEARSTACK(currentsp-5, sp);
+  new_ip = (Inst *) access_local_cell(vOffsetFP - SIZEOF_VOID_P);
+  sp = fp + 1;
+  fp = (Cell *) access_local_cell(vOffsetFP);
+  CLEARSTACK(currentsp - 6, sp - 1);
   vResult = vValue;
   SET_IP(new_ip);
 }
 
-LRETURN ( #vOffsetFP lValue -- lResult ) 0xad
+LRETURN ( #vOffsetFP ... lValue -- lResult ) 0xad
 {
-  Inst *new_ip = (Inst *)access_local_cell(vOffsetFP - SIZEOF_VOID_P);
+  Inst *new_ip;
   Cell *currentsp = sp;
-  sp = fp - 1;
-  fp = (Cell *)access_local_cell(vOffsetFP);
-  CLEARSTACK(currentsp-5, sp);
+  new_ip = (Inst *) access_local_cell(vOffsetFP - SIZEOF_VOID_P);
+  sp = fp + 1;
+  fp = (Cell *) access_local_cell(vOffsetFP);
+  CLEARSTACK(currentsp - 7, sp - 2);
   lResult = lValue;
   SET_IP(new_ip);
 }
 
-RETURN ( #vOffsetFP -- ) 0xb1
+RETURN ( #vOffsetFP ... -- ) 0xb1
 {
   Inst *new_ip;
   Cell *currentsp = sp;
-  IF_spTOS(sp[0] = spTOS);
-  new_ip = (Inst *)access_local_cell(vOffsetFP - SIZEOF_VOID_P);
-  sp = fp+1;
-  fp = (Cell *)access_local_cell(vOffsetFP);
-  CLEARSTACK(currentsp-5, sp-1);
+  new_ip = (Inst *) access_local_cell(vOffsetFP - SIZEOF_VOID_P);
+  sp = fp + 1;
+  fp = (Cell *) access_local_cell(vOffsetFP);
+  CLEARSTACK(currentsp - 5, sp - 1);
   SET_IP(new_ip);
-  IF_spTOS(spTOS = sp[0]);
 }
 
-GETSTATIC_CELL ( #addr #auf -- vResult ) opt
+GETSTATIC_CELL ( #addr #afi -- vResult ) opt
 {
   vResult = *(Cell *)addr;
 }
 
-GETSTATIC_INT ( #addr #auf -- iResult ) opt
+GETSTATIC_INT ( #addr #afi -- iResult ) opt
 {
   iResult = *(s4 *)addr;
 }
 
-GETSTATIC_LONG ( #addr #auf -- lResult ) opt
+GETSTATIC_FLOAT ( #addr #afi -- fResult ) opt
+{
+  fResult = *(float *)addr;
+}
+
+GETSTATIC_LONG ( #addr #afi -- lResult ) opt
 {
   lResult = *((s8 *) addr);
 }
 
-PUTSTATIC_CELL ( #addr #auf vValue -- ) opt
+PUTSTATIC_CELL ( #addr #afi vValue -- ) opt
 {
   *((Cell *) addr) = vValue;
 }
 
-PUTSTATIC_INT ( #addr #auf iValue -- ) opt
+PUTSTATIC_INT ( #addr #afi iValue -- ) opt
 {
   *((s4 *) addr) = iValue;
 }
 
-PUTSTATIC_LONG ( #addr #auf lValue -- ) opt
+PUTSTATIC_FLOAT ( #addr #afi fValue -- ) opt
+{
+  *((float *) addr) = fValue;
+}
+
+PUTSTATIC_LONG ( #addr #afi lValue -- ) opt
 {
   *((s8 *) addr) = lValue;
 }
 
-GETFIELD_CELL ( #vOffset #auf aRef -- vResult ) opt
+GETFIELD_CELL ( #vOffset #afi aRef -- vResult ) opt
 {
   CHECK_NULL_PTR(aRef);
   vResult = *((Cell *) (((u1 *)aRef) + vOffset));
 }
 
-GETFIELD_INT ( #vOffset #auf aRef -- iResult ) opt
+GETFIELD_INT ( #vOffset #afi aRef -- iResult ) opt
 {
   CHECK_NULL_PTR(aRef);
   iResult = *((s4 *) (((u1 *)aRef) + vOffset));
 }
 
-GETFIELD_LONG ( #vOffset #auf aRef -- lResult ) opt
+GETFIELD_FLOAT ( #vOffset #afi aRef -- fResult ) opt
+{
+  CHECK_NULL_PTR(aRef);
+  fResult = *((float *) (((u1 *) aRef) + vOffset));
+}
+
+GETFIELD_LONG ( #vOffset #afi aRef -- lResult ) opt
 {
   CHECK_NULL_PTR(aRef);
   lResult = *((s8 *) (((u1 *)aRef) + vOffset));
 }
 
 
-PUTFIELD_CELL ( #vOffset #auf aRef vValue -- ) opt
+PUTFIELD_CELL ( #vOffset #afi aRef vValue -- ) opt
 {
   CHECK_NULL_PTR(aRef);
   *((Cell *) (((u1 *)aRef) + vOffset)) = vValue;
 }
 
-PUTFIELD_INT ( #vOffset #auf aRef iValue -- ) opt
+PUTFIELD_INT ( #vOffset #afi aRef iValue -- ) opt
 {
   CHECK_NULL_PTR(aRef);
   *((s4 *) (((u1 *)aRef) + vOffset)) = iValue;
 }
 
-PUTFIELD_LONG ( #vOffset #auf aRef lValue -- ) opt
+PUTFIELD_FLOAT ( #vOffset #afi aRef fValue -- ) opt
+{
+  CHECK_NULL_PTR(aRef);
+  *((float *) (((u1 *)aRef) + vOffset)) = fValue;
+}
+
+PUTFIELD_LONG ( #vOffset #afi aRef lValue -- ) opt
 {
   CHECK_NULL_PTR(aRef);
   *((s8 *) (((u1 *)aRef) + vOffset)) = lValue;
@@ -938,9 +975,9 @@ PUTFIELD_LONG ( #vOffset #auf aRef lValue -- ) opt
 \ methods are always called indirectly through the codeptr in the stub 
 \   (see createcompilerstub and TRANSLATE).
 
-INVOKEVIRTUAL ( #vOffset #iNargs #aum -- acelloldfp ainstoldip ) 0xd8
+INVOKEVIRTUAL ( #vOffset #iNargs #am ... -- ... acelloldfp ainstoldip ) 0xd8
 {
-  java_objectheader *aRef = (java_objectheader *)(sp[iNargs + 1]); /* corrected for sp change by vmg */
+  java_objectheader *aRef = (java_objectheader *)(sp[iNargs - 1]);
   char *v;
   Inst **stub;
   Inst *target;
@@ -950,45 +987,43 @@ INVOKEVIRTUAL ( #vOffset #iNargs #aum -- acelloldfp ainstoldip ) 0xd8
   target = *stub;
   acelloldfp = fp;
   ainstoldip = IP;
-  fp = sp + 1 + iNargs;
-  sp = fp - MAXLOCALS(stub) - 1;
+  fp = sp - 1 + iNargs;
+  sp = fp - MAXLOCALS(stub) + 1;
   SET_IP(target);
 }
 
-INVOKESTATIC ( #aaTarget #iNargs #aum -- acelloldfp ainstoldip ) 0xb8
+INVOKESTATIC ( #aaTarget #iNargs #am ... -- ... acelloldfp ainstoldip ) 0xb8
 /* an indirect pointer to target is passed to avoid references to uncompiled code */
 {
   Inst *target = *aaTarget;
   acelloldfp = fp;
   ainstoldip = IP;
-  /* sp is already updated by the generator, so we have to compensate for that */
-  fp = sp + 1 + iNargs; /* !! scale nargs at translation time */
-  sp = fp - MAXLOCALS(aaTarget) - 1;
+  fp = sp - 1 + iNargs; /* !! scale nargs at translation time */
+  sp = fp - MAXLOCALS(aaTarget) + 1;
   SET_IP(target);
 }
 
-INVOKESPECIAL ( #aaTarget #iNargs #aum -- acelloldfp ainstoldip ) 0xb7
+INVOKESPECIAL ( #aaTarget #iNargs #am ... -- ... acelloldfp ainstoldip ) 0xb7
 /* an indirect pointer to target is passed to avoid references to uncompiled code */
 {
-  java_objectheader *aRef = (java_objectheader *)(sp[iNargs + 1]); /* corrected for sp change by vmg */
+  java_objectheader *aRef = (java_objectheader *)(sp[iNargs - 1]);
   Inst *target = *aaTarget;
   CHECK_NULL_PTR(aRef);
   acelloldfp = fp;
   ainstoldip = IP;
-  /* sp is already updated by the generator, so we have to compensate for that */
-  fp = sp + 1 + iNargs; /* !! scale nargs at translation time */
-  sp = fp - MAXLOCALS(aaTarget) - 1;
+  fp = sp - 1 + iNargs; /* !! scale nargs at translation time */
+  sp = fp - MAXLOCALS(aaTarget) + 1;
   SET_IP(target);
 }
 
-INVOKEINTERFACE ( #iInterfaceOffset #vOffset #iNargs #aum -- acelloldfp ainstoldip ) 0xd8
+INVOKEINTERFACE ( #iInterfaceOffset #vOffset #iNargs #am ... -- ... acelloldfp ainstoldip ) 0xd8
 {
   java_objectheader *aRef;
   char   *v, *t;
   Inst **stub;
   Inst *target;
   ;
-  aRef = (java_objectheader *)sp[iNargs + 1];
+  aRef = (java_objectheader *)sp[iNargs - 1];
   CHECK_NULL_PTR(aRef);
   v = (char *)(aRef->vftbl);
   t = *(char **)(v + iInterfaceOffset);
@@ -996,21 +1031,24 @@ INVOKEINTERFACE ( #iInterfaceOffset #vOffset #iNargs #aum -- acelloldfp ainstold
   target = *stub;
   acelloldfp = fp;
   ainstoldip = IP;
-  fp = sp + 1 + iNargs;
-  sp = fp - MAXLOCALS(stub) - 1;
+  fp = sp - 1 + iNargs;
+  sp = fp - MAXLOCALS(stub) + 1;
   SET_IP(target);
 }
 
 \ the BUILTIN functions like NEW get their parameters on the stack
 \ instead of through immediate arguments.
 
-NEW ( aClass -- aRef ) 0xbb
+\ !! do we need to synchronize the stack here?
+\ !! if so, is global_sp right?
+
+NEW ( ... aClass -- ... aRef ) 0xbb
 {
   global_sp = sp;
   aRef = builtin_new((classinfo *) aClass);
   if (aRef == NULL) {
     global_sp = sp;
-    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (functionptr) IP, (functionptr) IP);
+    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (u1 *) IP, (u1 *) IP);
     CLEAR_global_sp;
     THROW0;
   }
@@ -1019,130 +1057,130 @@ NEW ( aClass -- aRef ) 0xbb
 
 \ !! use a macro
 
-NEWARRAY_BOOLEAN ( iSize -- aArray )
+NEWARRAY_BOOLEAN ( ... iSize -- ... aArray )
 {
   global_sp = sp;
   aArray = (java_arrayheader *) builtin_newarray_boolean(iSize);
   if (aArray == NULL) {
     global_sp = sp;
-    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (functionptr) IP, (functionptr) IP);
+    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (u1 *) IP, (u1 *) IP);
     CLEAR_global_sp;
     THROW0;
   }
   CLEAR_global_sp;
 }
 
-NEWARRAY_BYTE ( iSize -- aArray )
+NEWARRAY_BYTE ( ... iSize -- ... aArray )
 {
   global_sp = sp;
   aArray = (java_arrayheader *) builtin_newarray_byte(iSize);
   if (aArray == NULL) {
     global_sp = sp;
-    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (functionptr) IP, (functionptr) IP);
+    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (u1 *) IP, (u1 *) IP);
     CLEAR_global_sp;
     THROW0;
   }
   CLEAR_global_sp;
 }
 
-NEWARRAY_CHAR ( iSize -- aArray )
+NEWARRAY_CHAR ( ... iSize -- ... aArray )
 {
   global_sp = sp;
   aArray = (java_arrayheader *) builtin_newarray_char(iSize);
   if (aArray == NULL) {
     global_sp = sp;
-    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (functionptr) IP, (functionptr) IP);
+    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (u1 *) IP, (u1 *) IP);
     CLEAR_global_sp;
     THROW0;
   }
   CLEAR_global_sp;
 }
 
-NEWARRAY_SHORT ( iSize -- aArray )
+NEWARRAY_SHORT ( ... iSize -- ... aArray )
 {
   global_sp = sp;
   aArray = (java_arrayheader *) builtin_newarray_short(iSize);
   if (aArray == NULL) {
     global_sp = sp;
-    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (functionptr) IP, (functionptr) IP);
+    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (u1 *) IP, (u1 *) IP);
     CLEAR_global_sp;
     THROW0;
   }
   CLEAR_global_sp;
 }
 
-NEWARRAY_INT ( iSize -- aArray )
+NEWARRAY_INT ( ... iSize -- ... aArray )
 {
   global_sp = sp;
   aArray = (java_arrayheader *) builtin_newarray_int(iSize);
   if (aArray == NULL) {
     global_sp = sp;
-    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (functionptr) IP, (functionptr) IP);
+    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (u1 *) IP, (u1 *) IP);
     CLEAR_global_sp;
     THROW0;
   }
   CLEAR_global_sp;
 }
 
-NEWARRAY_LONG ( iSize -- aArray )
+NEWARRAY_LONG ( ... iSize -- ... aArray )
 {
   global_sp = sp;
   aArray = (java_arrayheader *) builtin_newarray_long(iSize);
   if (aArray == NULL) {
     global_sp = sp;
-    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (functionptr) IP, (functionptr) IP);
+    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (u1 *) IP, (u1 *) IP);
     CLEAR_global_sp;
     THROW0;
   }
   CLEAR_global_sp;
 }
 
-NEWARRAY_FLOAT ( iSize -- aArray )
+NEWARRAY_FLOAT ( ... iSize -- ... aArray )
 {
   global_sp = sp;
   aArray = (java_arrayheader *) builtin_newarray_float(iSize);
   if (aArray == NULL) {
     global_sp = sp;
-    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (functionptr) IP, (functionptr) IP);
+    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (u1 *) IP, (u1 *) IP);
     CLEAR_global_sp;
     THROW0;
   }
   CLEAR_global_sp;
 }
 
-NEWARRAY_DOUBLE ( iSize -- aArray )
+NEWARRAY_DOUBLE ( ... iSize -- ... aArray )
 {
   global_sp = sp;
   aArray = (java_arrayheader *) builtin_newarray_double(iSize);
   if (aArray == NULL) {
     global_sp = sp;
-    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (functionptr) IP, (functionptr) IP);
+    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (u1 *) IP, (u1 *) IP);
     CLEAR_global_sp;
     THROW0;
   }
   CLEAR_global_sp;
 }
 
-NEWARRAY ( iSize avftbl -- aArray ) 0xbd
+NEWARRAY ( ... iSize aClass -- ... aArray )
 {
   global_sp = sp;
-  aArray = (java_arrayheader *) builtin_newarray(iSize, (vftbl_t *) avftbl);
+  aArray = (java_arrayheader *) builtin_newarray(iSize, aClass);
   if (aArray == NULL) {
     global_sp = sp;
-    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (functionptr) IP, (functionptr) IP);
+    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (u1 *) IP, (u1 *) IP);
     CLEAR_global_sp;
     THROW0;
   }
   CLEAR_global_sp;
 }
 
-ARRAYLENGTH ( aArray -- iResult ) 0xbe
+ARRAYLENGTH ( aArray -- iResult )
 {
   CHECK_NULL_PTR(aArray);
   iResult = length_array(aArray);
 }
 
-ATHROW ( aRef -- aRef1 ) 0xbf
+ATHROW ( ... aRef -- ... aRef1 )
 {
   Cell *new_sp, *new_fp;
   Inst *new_ip;
@@ -1150,23 +1188,20 @@ ATHROW ( aRef -- aRef1 ) 0xbf
   goto athrow;
 throw:
   CLEAR_global_sp;
-  /* IF_spTOS(sp[0] = spTOS); */
   aRef = *exceptionptr;
   *exceptionptr = NULL;
 athrow:
-  new_ip = asm_handle_exception(IP,aRef,fp,&new_sp,&new_fp);
-  if (new_ip==NULL) {
+  new_ip = intrp_asm_handle_exception(IP, aRef, fp, &new_sp, &new_fp);
+  if (new_ip == NULL) {
     /* !! sp = new_sp; ? */
-    IF_spTOS(sp[0] = spTOS);  /* !! correct? even for superinstructions? */
-    global_sp = sp;
+    global_sp = sp - 1;
     SUPER_END; /* ATHROW may end a basic block */
     return aRef;
   }
   SET_IP(new_ip);
   aRef1 = aRef;
-  sp=new_sp-1;
-  fp=new_fp;
-  /* IF_spTOS(spTOS = sp[0]); */
+  sp = new_sp;
+  fp = new_fp;
 }
 
 CHECKCAST ( #aClass #acr aRef -- aRef ) 0xc0
@@ -1181,13 +1216,12 @@ ARRAYCHECKCAST ( #aClass #acr aRef -- aRef ) 0xc0
     THROW(classcastexception);
 }
 
-PATCHER_ARRAYCHECKCAST ( #avftbl #acr -- ) 0xc0
+PATCHER_ARRAYCHECKCAST ( #avftbl #acr ... -- ) 0xc0
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_builtin_arraycheckcast((u1 *) (IP - 3));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_builtin_arraycheckcast((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1195,50 +1229,57 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(ARRAYCHECKCAST);
 SET_IP(IP - 3);
+patchersuper_rewrite(IP);
 
-INSTANCEOF ( #aClass #acr aRef  -- iResult ) 0xc1
+INSTANCEOF ( #aClass #acr aRef  -- iResult )
 {
   iResult = builtin_instanceof(aRef, aClass);
 }
 
-ARRAYINSTANCEOF ( aRef avftbl  -- iResult ) 0xc1
+ARRAYINSTANCEOF ( aRef aClass  -- iResult )
 {
-  iResult = builtin_arrayinstanceof(aRef, avftbl);
+  iResult = builtin_arrayinstanceof(aRef, aClass);
 }
 
-MONITORENTER ( aRef -- ) 0xc2
+MONITORENTER ( aRef -- )
 {
-#if defined(USE_THREADS)
+#if defined(ENABLE_THREADS)
   /* CHECK_NULL_PTR(aRef); is now done explicitly */
   builtin_monitorenter(aRef);
 #endif
 }
 
-MONITOREXIT ( aRef -- ) 0xc3
+MONITOREXIT ( aRef -- )
 {
-#if defined(USE_THREADS)
+#if defined(ENABLE_THREADS)
   /* CHECK_NULL_PTR(aRef); cannot happen */
   builtin_monitorexit(aRef);
 #endif
 }
 
-CHECKNULL ( aRef -- aRef ) 0xc3
+CHECKNULL ( aRef -- aRef )
 {
   CHECK_NULL_PTR(aRef);
 }
 
-MULTIANEWARRAY ( #avftbl #iSize #acr -- aRef ) 197
+MULTIANEWARRAY ( #aClass #iSize #acr ... -- aRef )
 {
-  long dims[iSize];
+  long *dims;
   int i;
+
+  dims = MNEW(long, iSize);
+
   for (i = 0; i < iSize; i++) {
-    dims[i] = (sp + 1)[iSize - i - 1]; /* sp+1 to counter decrement by vmgen */
+    dims[i] = sp[iSize - i - 1];
   }
-  global_sp = sp + 1;
-  aRef = (java_objectheader *)builtin_multianewarray(iSize, avftbl, dims);
+  global_sp = sp;
+  aRef = (java_objectheader *) builtin_multianewarray(iSize, aClass, dims);
+
+  MFREE(dims, long, iSize);
+
   if (aRef == NULL) {
     global_sp = sp;
-    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (functionptr) IP, (functionptr) IP);
+    *exceptionptr = stacktrace_inline_fillInStackTrace(NULL, (u1 *) fp, (u1 *) IP, (u1 *) IP);
     CLEAR_global_sp;
     THROW0;
   }
@@ -1260,15 +1301,14 @@ IFNONNULL ( #ainstTarget aRef -- ) 0xc7
   }
 }
 
-\ patchers for stuff that is unknown at compile time (unloaded classes)
+\ patchers for resolving fields
 
-PATCHER_GETSTATIC_INT ( #aRef #auf -- )
+PATCHER_GETSTATIC_INT ( #aRef #auf ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_get_putstatic((u1 *)(IP-3));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putstatic((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1276,14 +1316,29 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(GETSTATIC_INT);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
 
-PATCHER_GETSTATIC_LONG ( #aRef #auf -- )
+PATCHER_GETSTATIC_FLOAT ( #aRef #auf ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
 stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_get_putstatic((u1 *)(IP-3));
+result = intrp_patcher_get_putstatic((u1 *)(IP-3));
+stacktrace_remove_stackframeinfo(&sfi);
+CLEAR_global_sp;
+if (!result)
+  THROW0;
+STORE_ORDER_BARRIER();
+IP[-3] = INST_ADDR(GETSTATIC_FLOAT);
+SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+PATCHER_GETSTATIC_LONG ( #aRef #auf ... -- )
+stackframeinfo sfi;
+bool result;
+global_sp = sp;
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putstatic((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1291,14 +1346,14 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(GETSTATIC_LONG);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
 
-PATCHER_GETSTATIC_CELL ( #aRef #auf -- )
+PATCHER_GETSTATIC_CELL ( #aRef #auf ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_get_putstatic((u1 *)(IP-3));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putstatic((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1306,14 +1361,78 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(GETSTATIC_CELL);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+\ patchers for statically initializing classes
 
-PATCHER_PUTSTATIC_INT ( #aRef #auf -- )
+PATCHER_GETSTATIC_CLINIT_INT ( #aRef #afi ... -- )
+stackframeinfo sfi;
+bool result;
+global_sp = sp;
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putstatic_clinit((u1 *) (IP - 3));
+stacktrace_remove_stackframeinfo(&sfi);
+CLEAR_global_sp;
+if (!result)
+  THROW0;
+STORE_ORDER_BARRIER();
+IP[-3] = INST_ADDR(GETSTATIC_INT);
+SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+PATCHER_GETSTATIC_CLINIT_FLOAT ( #aRef #afi ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
 stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_get_putstatic((u1 *)(IP-3));
+result = intrp_patcher_get_putstatic_clinit((u1 *)(IP-3));
+stacktrace_remove_stackframeinfo(&sfi);
+CLEAR_global_sp;
+if (!result)
+  THROW0;
+STORE_ORDER_BARRIER();
+IP[-3] = INST_ADDR(GETSTATIC_FLOAT);
+SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+PATCHER_GETSTATIC_CLINIT_LONG ( #aRef #afi ... -- )
+stackframeinfo sfi;
+bool result;
+global_sp = sp;
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putstatic_clinit((u1 *) (IP - 3));
+stacktrace_remove_stackframeinfo(&sfi);
+CLEAR_global_sp;
+if (!result)
+  THROW0;
+STORE_ORDER_BARRIER();
+IP[-3] = INST_ADDR(GETSTATIC_LONG);
+SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+PATCHER_GETSTATIC_CLINIT_CELL ( #aRef #afi ... -- )
+stackframeinfo sfi;
+bool result;
+global_sp = sp;
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putstatic_clinit((u1 *) (IP - 3));
+stacktrace_remove_stackframeinfo(&sfi);
+CLEAR_global_sp;
+if (!result)
+  THROW0;
+STORE_ORDER_BARRIER();
+IP[-3] = INST_ADDR(GETSTATIC_CELL);
+SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+\ patchers for resolving fields
+
+PATCHER_PUTSTATIC_INT ( #aRef #auf ... -- )
+stackframeinfo sfi;
+bool result;
+global_sp = sp;
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putstatic((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1321,14 +1440,29 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(PUTSTATIC_INT);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
 
-PATCHER_PUTSTATIC_LONG ( #aRef #auf -- )
+PATCHER_PUTSTATIC_FLOAT ( #aRef #auf ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
 stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_get_putstatic((u1 *)(IP-3));
+result = intrp_patcher_get_putstatic((u1 *)(IP-3));
+stacktrace_remove_stackframeinfo(&sfi);
+CLEAR_global_sp;
+if (!result)
+  THROW0;
+STORE_ORDER_BARRIER();
+IP[-3] = INST_ADDR(PUTSTATIC_FLOAT);
+SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+PATCHER_PUTSTATIC_LONG ( #aRef #auf ... -- )
+stackframeinfo sfi;
+bool result;
+global_sp = sp;
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putstatic((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1336,14 +1470,14 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(PUTSTATIC_LONG);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
 
-PATCHER_PUTSTATIC_CELL ( #aRef #auf -- )
+PATCHER_PUTSTATIC_CELL ( #aRef #auf ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_get_putstatic((u1 *)(IP-3));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putstatic((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1351,14 +1485,78 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(PUTSTATIC_CELL);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+\ patchers for statically initializing classes
+
+PATCHER_PUTSTATIC_CLINIT_INT ( #aRef #afi ... -- )
+stackframeinfo sfi;
+bool result;
+global_sp = sp;
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putstatic_clinit((u1 *) (IP - 3));
+stacktrace_remove_stackframeinfo(&sfi);
+CLEAR_global_sp;
+if (!result)
+  THROW0;
+STORE_ORDER_BARRIER();
+IP[-3] = INST_ADDR(PUTSTATIC_INT);
+SET_IP(IP-3);
+patchersuper_rewrite(IP);
 
-PATCHER_GETFIELD_INT ( #vOffset #auf -- )
+PATCHER_PUTSTATIC_CLINIT_FLOAT ( #aRef #afi ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
 stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_get_putfield((u1 *)(IP-3));
+result = intrp_patcher_get_putstatic_clinit((u1 *)(IP-3));
+stacktrace_remove_stackframeinfo(&sfi);
+CLEAR_global_sp;
+if (!result)
+  THROW0;
+STORE_ORDER_BARRIER();
+IP[-3] = INST_ADDR(PUTSTATIC_FLOAT);
+SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+PATCHER_PUTSTATIC_CLINIT_LONG ( #aRef #afi ... -- )
+stackframeinfo sfi;
+bool result;
+global_sp = sp;
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putstatic_clinit((u1 *) (IP - 3));
+stacktrace_remove_stackframeinfo(&sfi);
+CLEAR_global_sp;
+if (!result)
+  THROW0;
+STORE_ORDER_BARRIER();
+IP[-3] = INST_ADDR(PUTSTATIC_LONG);
+SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+PATCHER_PUTSTATIC_CLINIT_CELL ( #aRef #afi ... -- )
+stackframeinfo sfi;
+bool result;
+global_sp = sp;
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putstatic_clinit((u1 *) (IP - 3));
+stacktrace_remove_stackframeinfo(&sfi);
+CLEAR_global_sp;
+if (!result)
+  THROW0;
+STORE_ORDER_BARRIER();
+IP[-3] = INST_ADDR(PUTSTATIC_CELL);
+SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+\ patchers for resolving fields
+
+PATCHER_GETFIELD_INT ( #vOffset #auf ... -- )
+stackframeinfo sfi;
+bool result;
+global_sp = sp;
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putfield((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1366,14 +1564,29 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(GETFIELD_INT);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
 
-PATCHER_GETFIELD_LONG ( #vOffset #auf -- )
+PATCHER_GETFIELD_FLOAT ( #vOffset #auf ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
 stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_get_putfield((u1 *)(IP-3));
+result = intrp_patcher_get_putfield((u1 *)(IP-3));
+stacktrace_remove_stackframeinfo(&sfi);
+CLEAR_global_sp;
+if (!result)
+  THROW0;
+STORE_ORDER_BARRIER();
+IP[-3] = INST_ADDR(GETFIELD_FLOAT);
+SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+PATCHER_GETFIELD_LONG ( #vOffset #auf ... -- )
+stackframeinfo sfi;
+bool result;
+global_sp = sp;
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putfield((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1381,14 +1594,14 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(GETFIELD_LONG);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
 
-PATCHER_GETFIELD_CELL ( #vOffset #auf -- )
+PATCHER_GETFIELD_CELL ( #vOffset #auf ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_get_putfield((u1 *)(IP-3));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putfield((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1396,14 +1609,14 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(GETFIELD_CELL);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
 
-PATCHER_PUTFIELD_INT ( #vOffset #auf -- )
+PATCHER_PUTFIELD_INT ( #vOffset #auf ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_get_putfield((u1 *)(IP-3));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putfield((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1411,14 +1624,29 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(PUTFIELD_INT);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
 
-PATCHER_PUTFIELD_LONG ( #vOffset #auf -- )
+PATCHER_PUTFIELD_FLOAT ( #vOffset #auf ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
 stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_get_putfield((u1 *)(IP-3));
+result = intrp_patcher_get_putfield((u1 *)(IP-3));
+stacktrace_remove_stackframeinfo(&sfi);
+CLEAR_global_sp;
+if (!result)
+  THROW0;
+STORE_ORDER_BARRIER();
+IP[-3] = INST_ADDR(PUTFIELD_FLOAT);
+SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+PATCHER_PUTFIELD_LONG ( #vOffset #auf ... -- )
+stackframeinfo sfi;
+bool result;
+global_sp = sp;
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putfield((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1426,14 +1654,14 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(PUTFIELD_LONG);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
 
-PATCHER_PUTFIELD_CELL ( #vOffset #auf -- )
+PATCHER_PUTFIELD_CELL ( #vOffset #auf ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_get_putfield((u1 *)(IP-3));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_get_putfield((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1441,14 +1669,16 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(PUTFIELD_CELL);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
+
+\ other patchers for lazy resolving
 
-PATCHER_MULTIANEWARRAY ( #aClass #iSize #acr -- )
+PATCHER_MULTIANEWARRAY ( #aClass #iSize #acr ... -- )
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_builtin_multianewarray((u1 *)(IP - 4));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_builtin_multianewarray((u1 *) (IP - 4));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1456,14 +1686,14 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-4] = INST_ADDR(MULTIANEWARRAY);
 SET_IP(IP - 4);
+patchersuper_rewrite(IP);
 
-PATCHER_INVOKESTATIC ( #aaTarget #iNargs #aum -- ) 0xd8
+PATCHER_INVOKESTATIC ( #aaTarget #iNargs #aum ... -- ) 0xd8
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_invokestatic_special((u1 *)(IP-4));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_invokestatic_special((u1 *) (IP - 4));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1471,14 +1701,14 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-4] = INST_ADDR(INVOKESTATIC);
 SET_IP(IP-4);
+patchersuper_rewrite(IP);
 
-PATCHER_INVOKESPECIAL ( #aaTarget #iNargs #aum -- ) 0xd8
+PATCHER_INVOKESPECIAL ( #aaTarget #iNargs #aum ... -- ) 0xd8
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_invokestatic_special((u1 *)(IP-4));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_invokestatic_special((u1 *) (IP - 4));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1486,14 +1716,14 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-4] = INST_ADDR(INVOKESPECIAL);
 SET_IP(IP-4);
+patchersuper_rewrite(IP);
 
-PATCHER_INVOKEVIRTUAL ( #vOffset #iNargs #aum -- ) 0xd8
+PATCHER_INVOKEVIRTUAL ( #vOffset #iNargs #aum ... -- ) 0xd8
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_invokevirtual((u1 *)(IP-4));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_invokevirtual((u1 *) (IP - 4));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1501,14 +1731,14 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-4] = INST_ADDR(INVOKEVIRTUAL);
 SET_IP(IP-4);
+patchersuper_rewrite(IP);
 
-PATCHER_INVOKEINTERFACE ( #iInterfaceoffset #vOffset #iNargs #aum -- ) 0xd8
+PATCHER_INVOKEINTERFACE ( #iInterfaceoffset #vOffset #iNargs #aum ... -- ) 0xd8
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_invokeinterface((u1 *)(IP-5));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_invokeinterface((u1 *) (IP - 5));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1516,14 +1746,14 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-5] = INST_ADDR(INVOKEINTERFACE);
 SET_IP(IP-5);
+patchersuper_rewrite(IP);
 
-PATCHER_CHECKCAST ( #aClass #acr -- ) 0xc
+PATCHER_CHECKCAST ( #aClass #acr ... -- ) 0xc
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_checkcast_instanceof((u1 *)(IP-3));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_checkcast_instanceof((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1531,14 +1761,14 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(CHECKCAST);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
 
-PATCHER_INSTANCEOF ( #aClass #acr -- ) 0xc1
+PATCHER_INSTANCEOF ( #aClass #acr ... -- ) 0xc1
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_checkcast_instanceof((u1 *)(IP-3));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_checkcast_instanceof((u1 *) (IP - 3));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
@@ -1546,21 +1776,25 @@ if (!result)
 STORE_ORDER_BARRIER();
 IP[-3] = INST_ADDR(INSTANCEOF);
 SET_IP(IP-3);
+patchersuper_rewrite(IP);
 
 \ This is stub code for methods that we have not yet translated.
 \ Initially, the code for each method is set to this stub. The
 \ first time the method is called, the code in the stub runs, which
 \ translates the bytecode, and replaces the stub with the threaded code.
 
-TRANSLATE ( #am acelloldfp ainstoldip --  acelloldfp ainstoldip )
+TRANSLATE ( #am ... --  )
 {
   Inst *codeptr;
   stackframeinfo sfi;
+  Cell *acelloldfp;
+  Inst *ainstoldip;
   ;
-  IF_spTOS(sp[0] = spTOS);
+  vm_Cell2acell(sp[1],acelloldfp);
+  vm_Cell2ainst(sp[0],ainstoldip);
   global_sp = sp;
-  stacktrace_create_extern_stackframeinfo(&sfi, NULL, (u1 *)acelloldfp, (functionptr) ainstoldip, (functionptr) ainstoldip);
-  codeptr = (Inst *)jit_compile(am);
+  stacktrace_create_extern_stackframeinfo(&sfi, NULL, (u1 *) acelloldfp, (u1 *) ainstoldip, (u1 *) ainstoldip);
+  codeptr = (Inst *) jit_compile(am);
   stacktrace_remove_stackframeinfo(&sfi);
   if (codeptr == NULL) {
     fp = acelloldfp;
@@ -1572,53 +1806,50 @@ TRANSLATE ( #am acelloldfp ainstoldip --  acelloldfp ainstoldip )
   SET_IP(codeptr);
 }
 
-NATIVECALL ( #am #af #addrcif acelloldfp ainstoldip -- )
+NATIVECALL ( #am #af #addrcif ... acelloldfp ainstoldip -- )
 sp = nativecall(af, am, sp, ainstoldip, acelloldfp, addrcif);
-IF_spTOS(spTOS = sp[0]);
 fp = acelloldfp;
 SET_IP(ainstoldip);
 if (*exceptionptr)
   THROW0;
 
 
-TRACENATIVECALL ( #am #af #addrcif acelloldfp ainstoldip -- )
+TRACENATIVECALL ( #am #af #addrcif ... acelloldfp ainstoldip -- )
 sp = nativecall(af, am, sp, ainstoldip, acelloldfp, addrcif);
-IF_spTOS(spTOS = sp[0]);
 fp = acelloldfp;
 SET_IP(ainstoldip);
 {
-Cell v = spTOS;
-functionptr fp = codegen_findmethod((functionptr)(IP-1));
-methodinfo *m = ((methodinfo **) fp)[-1];
+Cell v = sp[0];
 float f;
 vm_Cell2f(v,f);
-builtin_displaymethodstop(m, (s8)v, f, f);
+#if !defined(NDEBUG)
+builtin_displaymethodstop(am, (s8) v, f, f);
+#endif
 }
 if (*exceptionptr)
   THROW0;
 
-PATCHER_NATIVECALL ( #am #af #addrcif -- )
-#if !defined(ENABLE_STATICVM)
+PATCHER_NATIVECALL ( #am #af #addrcif ... -- )
+#if !defined(WITH_STATIC_CLASSPATH)
 stackframeinfo sfi;
 bool result;
-IF_spTOS(sp[0]=spTOS);
 global_sp = sp;
-stacktrace_create_stackframeinfo(&sfi, NULL, fp, (functionptr) IP);
-result = patcher_resolve_native((u1 *) (IP - 4));
+stacktrace_create_stackframeinfo(&sfi, NULL, (u1 *) fp, (u1 *) IP);
+result = intrp_patcher_resolve_native((u1 *) (IP - 4));
 stacktrace_remove_stackframeinfo(&sfi);
 CLEAR_global_sp;
 if (!result)
   THROW0;
 STORE_ORDER_BARRIER();
-IP[-4] = runverbose ? INST_ADDR(TRACENATIVECALL) : INST_ADDR(NATIVECALL);
+IP[-4] = opt_verbosecall ? INST_ADDR(TRACENATIVECALL) : INST_ADDR(NATIVECALL);
 SET_IP(IP - 4);
+patchersuper_rewrite(IP);
 #else
 assert(false);
 #endif
 
-TRACECALL ( -- )
-functionptr f = codegen_findmethod((functionptr)(IP-1));
-methodinfo *m = ((methodinfo **) f)[-1];
+TRACECALL ( #am -- )
+#if !defined(NDEBUG)
 builtin_trace_args(
        access_local_cell(0 * -SIZEOF_VOID_P),
        access_local_cell(1 * -SIZEOF_VOID_P),
@@ -1632,1027 +1863,127 @@ builtin_trace_args(
        access_local_cell(6 * -SIZEOF_VOID_P),
        access_local_cell(7 * -SIZEOF_VOID_P),
 #endif
-       m);
+       am);
+#endif /* !defined(NDEBUG) */
 
-TRACERETURN ( v -- v )
-functionptr fp = codegen_findmethod((functionptr)(IP-1));
-methodinfo *m = ((methodinfo **) fp)[-1];
+TRACERETURN ( #am v -- v )
 float f;
 vm_Cell2f(v,f);
-builtin_displaymethodstop(m, (s8)v, f, f);
+#if !defined(NDEBUG)
+builtin_displaymethodstop(am, (s8) v, f, f);
+#endif
 
-TRACELRETURN ( l -- l )
-functionptr fp = codegen_findmethod((functionptr)(IP-1));
-methodinfo *m = ((methodinfo **) fp)[-1];
+TRACELRETURN ( #am l -- l )
 Double_Store ds;
 ds.l = l;
-builtin_displaymethodstop(m, l, ds.d, ds.d);
+#if !defined(NDEBUG)
+builtin_displaymethodstop(am, l, ds.d, ds.d);
+#endif
 
-END ( -- )
-IF_spTOS(sp[0] = spTOS);
+END ( ... -- )
 global_sp = sp;
 SUPER_END;
 vm_uncount_block(IP); /* undo the count part of SUPER_END,
                         because there is no fallthrough */
 return NULL;
 
-\ _DUP_ICONST_ =  DUP ICONST 
-\ _ICONST_ICONST_ =  ICONST ICONST 
-\ _DUP_ICONST_ICONST_ =  DUP ICONST ICONST 
-\ _ICONST_CASTORE_ =  ICONST CASTORE 
-\ _ICONST_ICONST_CASTORE_ =  ICONST ICONST CASTORE 
-\ _DUP_ICONST_ICONST_CASTORE_ =  DUP ICONST ICONST CASTORE 
-\ _CASTORE_DUP_ =  CASTORE DUP 
-\ _CASTORE_DUP_ICONST_ =  CASTORE DUP ICONST 
-\ _CASTORE_DUP_ICONST_ICONST_ =  CASTORE DUP ICONST ICONST 
-\ _CASTORE_DUP_ICONST_ICONST_CASTORE_ =  CASTORE DUP ICONST ICONST CASTORE 
-\ _DUP_ICONST_ICONST_CASTORE_DUP_ =  DUP ICONST ICONST CASTORE DUP 
-\ _ICONST_CASTORE_DUP_ =  ICONST CASTORE DUP 
-\ _ICONST_CASTORE_DUP_ICONST_ =  ICONST CASTORE DUP ICONST 
-\ _ICONST_CASTORE_DUP_ICONST_ICONST_ =  ICONST CASTORE DUP ICONST ICONST 
-\ _ICONST_ICONST_CASTORE_DUP_ =  ICONST ICONST CASTORE DUP 
-\ _ICONST_ICONST_CASTORE_DUP_ICONST_ =  ICONST ICONST CASTORE DUP ICONST 
-\ _ALOAD_GETFIELD_CELL_ =  ALOAD GETFIELD_CELL 
-\ _ALOAD_ALOAD_ =  ALOAD ALOAD 
-\ _ICONST_IASTORE_ =  ICONST IASTORE 
-\ _ICONST_ICONST_IASTORE_ =  ICONST ICONST IASTORE 
-\ _ALOAD_ACONST_ =  ALOAD ACONST 
-\ _DUP_ICONST_ICONST_IASTORE_ =  DUP ICONST ICONST IASTORE 
-\ _ALOAD_ICONST_ =  ALOAD ICONST 
-\ _ALOAD_GETFIELD_INT_ =  ALOAD GETFIELD_INT 
-\ _IASTORE_DUP_ =  IASTORE DUP 
-\ _IASTORE_DUP_ICONST_ =  IASTORE DUP ICONST 
-\ _DUP_ICONST_ICONST_IASTORE_DUP_ =  DUP ICONST ICONST IASTORE DUP 
-\ _ICONST_IASTORE_DUP_ =  ICONST IASTORE DUP 
-\ _ICONST_IASTORE_DUP_ICONST_ =  ICONST IASTORE DUP ICONST 
-\ _ICONST_ICONST_IASTORE_DUP_ =  ICONST ICONST IASTORE DUP 
-\ _ICONST_ICONST_IASTORE_DUP_ICONST_ =  ICONST ICONST IASTORE DUP ICONST 
-\ _IASTORE_DUP_ICONST_ICONST_ =  IASTORE DUP ICONST ICONST 
-\ _IASTORE_DUP_ICONST_ICONST_IASTORE_ =  IASTORE DUP ICONST ICONST IASTORE 
-\ _ICONST_IASTORE_DUP_ICONST_ICONST_ =  ICONST IASTORE DUP ICONST ICONST 
-\ _ICONST_ACONST_ =  ICONST ACONST 
-\ _AASTORE_DUP_ =  AASTORE DUP 
-\ _AASTORE_DUP_ICONST_ =  AASTORE DUP ICONST 
-\ _ASTORE_ALOAD_ =  ASTORE ALOAD 
-\ _DUP_ICONST_ACONST_ =  DUP ICONST ACONST 
-\ _ALOAD_ILOAD_ =  ALOAD ILOAD 
-\ _ACONST_AASTORE_ =  ACONST AASTORE 
-\ _ICONST_ACONST_AASTORE_ =  ICONST ACONST AASTORE 
-\ _AASTORE_DUP_ICONST_ACONST_ =  AASTORE DUP ICONST ACONST 
-\ _DUP_ICONST_ACONST_AASTORE_ =  DUP ICONST ACONST AASTORE 
-\ _ACONST_AASTORE_DUP_ =  ACONST AASTORE DUP 
-\ _ACONST_AASTORE_DUP_ICONST_ =  ACONST AASTORE DUP ICONST 
-\ _DUP_ICONST_ACONST_AASTORE_DUP_ =  DUP ICONST ACONST AASTORE DUP 
-\ _ICONST_ACONST_AASTORE_DUP_ =  ICONST ACONST AASTORE DUP 
-\ _ICONST_ACONST_AASTORE_DUP_ICONST_ =  ICONST ACONST AASTORE DUP ICONST 
-\ _AASTORE_DUP_ICONST_ACONST_AASTORE_ =  AASTORE DUP ICONST ACONST AASTORE 
-\ _ACONST_AASTORE_DUP_ICONST_ACONST_ =  ACONST AASTORE DUP ICONST ACONST 
-\ _POP_ALOAD_ =  POP ALOAD 
-\ _PUTFIELD_CELL_ALOAD_ =  PUTFIELD_CELL ALOAD 
-\ _ACONST_ALOAD_ =  ACONST ALOAD 
-\ _GETFIELD_CELL_ALOAD_ =  GETFIELD_CELL ALOAD 
-\ _POP_ALOAD_ACONST_ =  POP ALOAD ACONST 
-\ _PUTFIELD_INT_ALOAD_ =  PUTFIELD_INT ALOAD 
-\ _ALOAD_ACONST_ALOAD_ =  ALOAD ACONST ALOAD 
-\ _ALOAD_GETFIELD_CELL_ALOAD_ =  ALOAD GETFIELD_CELL ALOAD 
-\ _POP_ALOAD_ACONST_ALOAD_ =  POP ALOAD ACONST ALOAD 
-\ _ILOAD_ICONST_ =  ILOAD ICONST 
-\ _ILOAD_ILOAD_ =  ILOAD ILOAD 
-\ _ALOAD_PUTFIELD_CELL_ =  ALOAD PUTFIELD_CELL 
-\ _ALOAD_ALOAD_PUTFIELD_CELL_ =  ALOAD ALOAD PUTFIELD_CELL 
-\ _DUP_ALOAD_ =  DUP ALOAD 
-\ _GETSTATIC_CELL_ICONST_ =  GETSTATIC_CELL ICONST 
-\ _ILOAD_ALOAD_ =  ILOAD ALOAD 
-\ _ICONST_ISTORE_ =  ICONST ISTORE 
-\ _ALOAD_ALOAD_ALOAD_ =  ALOAD ALOAD ALOAD 
-\ _GETSTATIC_CELL_ICONST_ICONST_ =  GETSTATIC_CELL ICONST ICONST 
-\ _GETSTATIC_CELL_ICONST_ICONST_IASTORE_ =  GETSTATIC_CELL ICONST ICONST IASTORE 
-\ _ICONST_PUTFIELD_INT_ =  ICONST PUTFIELD_INT 
-\ _ALOAD_ICONST_PUTFIELD_INT_ =  ALOAD ICONST PUTFIELD_INT 
-\ _PUTSTATIC_CELL_ACONST_ =  PUTSTATIC_CELL ACONST 
-\ _GETFIELD_CELL_ILOAD_ =  GETFIELD_CELL ILOAD 
-\ _ACONST_ACONST_ =  ACONST ACONST 
-\ _ISTORE_ALOAD_ =  ISTORE ALOAD 
-\ _ALOAD_ALOAD_GETFIELD_CELL_ =  ALOAD ALOAD GETFIELD_CELL 
-\ _ISTORE_GOTO_ =  ISTORE GOTO 
-\ _ALOAD_GETFIELD_CELL_ILOAD_ =  ALOAD GETFIELD_CELL ILOAD 
-\ _ALOAD_PUTFIELD_CELL_ALOAD_ =  ALOAD PUTFIELD_CELL ALOAD 
-\ _GETFIELD_INT_ICONST_ =  GETFIELD_INT ICONST 
-\ _ALOAD_ALOAD_PUTFIELD_CELL_ALOAD_ =  ALOAD ALOAD PUTFIELD_CELL ALOAD 
-\ _ISTORE_ILOAD_ =  ISTORE ILOAD 
-\ _ALOAD_IFNONNULL_ =  ALOAD IFNONNULL 
-\ _DUP_ACONST_ =  DUP ACONST 
-\ _ICONST_ALOAD_ =  ICONST ALOAD 
-\ _ALOAD_IFNULL_ =  ALOAD IFNULL 
-\ _GETSTATIC_CELL_ACONST_ =  GETSTATIC_CELL ACONST 
-\ _ILOAD_PUTFIELD_INT_ =  ILOAD PUTFIELD_INT 
-\ _ALOAD_ILOAD_PUTFIELD_INT_ =  ALOAD ILOAD PUTFIELD_INT 
-\ _ICONST_ISTORE_GOTO_ =  ICONST ISTORE GOTO 
-\ _ICONST_IADD_ =  ICONST IADD 
-\ _GETFIELD_INT_ALOAD_ =  GETFIELD_INT ALOAD 
-\ _ICONST_IF_ICMPNE_ =  ICONST IF_ICMPNE 
-\ _PUTFIELD_CELL_ALOAD_ALOAD_ =  PUTFIELD_CELL ALOAD ALOAD 
-\ _DUP_GETFIELD_INT_ =  DUP GETFIELD_INT 
-\ _ALOAD_DUP_ =  ALOAD DUP 
-\ _ICONST_PUTFIELD_INT_ALOAD_ =  ICONST PUTFIELD_INT ALOAD 
-\ _ALOAD_ICONST_PUTFIELD_INT_ALOAD_ =  ALOAD ICONST PUTFIELD_INT ALOAD 
-\ _ALOAD_DUP_GETFIELD_INT_ =  ALOAD DUP GETFIELD_INT 
-\ _ALOAD_GETFIELD_INT_ALOAD_ =  ALOAD GETFIELD_INT ALOAD 
-\ _ILOAD_AALOAD_ =  ILOAD AALOAD 
-\ _ACONST_ICONST_ =  ACONST ICONST 
-\ _ASTORE_GOTO_ =  ASTORE GOTO 
-\ _CHECKCAST_ASTORE_ =  CHECKCAST ASTORE 
-\ _GETFIELD_CELL_ICONST_ =  GETFIELD_CELL ICONST 
-\ _ASTORE_ALOAD_ALOAD_ =  ASTORE ALOAD ALOAD 
-\ _ALOAD_GETFIELD_CELL_ICONST_ =  ALOAD GETFIELD_CELL ICONST 
-\ _GETFIELD_CELL_GETFIELD_CELL_ =  GETFIELD_CELL GETFIELD_CELL 
-\ _CHECKCAST_ASTORE_ALOAD_ =  CHECKCAST ASTORE ALOAD 
-\ _ALOAD_GETFIELD_INT_ICONST_ =  ALOAD GETFIELD_INT ICONST 
-\ _IADD_PUTFIELD_INT_ =  IADD PUTFIELD_INT 
-\ _ASTORE_ALOAD_IFNULL_ =  ASTORE ALOAD IFNULL 
-\ _ACONST_PUTFIELD_CELL_ =  ACONST PUTFIELD_CELL 
-\ _ALOAD_ACONST_PUTFIELD_CELL_ =  ALOAD ACONST PUTFIELD_CELL 
-\ _ALOAD_ARRAYLENGTH_ =  ALOAD ARRAYLENGTH 
-\ _ALOAD_GETFIELD_CELL_GETFIELD_CELL_ =  ALOAD GETFIELD_CELL GETFIELD_CELL 
-\ _ALOAD_MONITOREXIT_ =  ALOAD MONITOREXIT 
-\ _ILOAD_PUTFIELD_INT_ALOAD_ =  ILOAD PUTFIELD_INT ALOAD 
-\ _ALOAD_ILOAD_PUTFIELD_INT_ALOAD_ =  ALOAD ILOAD PUTFIELD_INT ALOAD 
-\ _ASTORE_ALOAD_GETFIELD_CELL_ =  ASTORE ALOAD GETFIELD_CELL 
-\ _GETFIELD_CELL_ARRAYLENGTH_ =  GETFIELD_CELL ARRAYLENGTH 
-\ _ICONST_ILOAD_ =  ICONST ILOAD 
-\ _GETFIELD_INT_ALOAD_GETFIELD_INT_ =  GETFIELD_INT ALOAD GETFIELD_INT 
-\ _ALOAD_PUTFIELD_CELL_ALOAD_ALOAD_ =  ALOAD PUTFIELD_CELL ALOAD ALOAD 
-\ _ALOAD_ALOAD_PUTFIELD_CELL_ALOAD_ALOAD_ =  ALOAD ALOAD PUTFIELD_CELL ALOAD ALOAD 
-\ _PUTFIELD_CELL_ALOAD_ACONST_ =  PUTFIELD_CELL ALOAD ACONST 
-\ _ALOAD_GETFIELD_INT_ALOAD_GETFIELD_INT_ =  ALOAD GETFIELD_INT ALOAD GETFIELD_INT 
-\ _ALOAD_GETFIELD_CELL_ARRAYLENGTH_ =  ALOAD GETFIELD_CELL ARRAYLENGTH 
-\ _ALOAD_ILOAD_ILOAD_ =  ALOAD ILOAD ILOAD 
-\ _ICONST_IAND_ =  ICONST IAND 
-\ _PUTFIELD_INT_ALOAD_ICONST_ =  PUTFIELD_INT ALOAD ICONST 
-\ _ASTORE_ACONST_ =  ASTORE ACONST 
-\ _AASTORE_DUP_ICONST_ICONST_ =  AASTORE DUP ICONST ICONST 
-\ _GETSTATIC_CELL_ACONST_ACONST_ =  GETSTATIC_CELL ACONST ACONST 
-\ _PUTFIELD_INT_ALOAD_ALOAD_ =  PUTFIELD_INT ALOAD ALOAD 
-\ _GETFIELD_CELL_IFNONNULL_ =  GETFIELD_CELL IFNONNULL 
-\ _ALOAD_GETFIELD_CELL_IFNONNULL_ =  ALOAD GETFIELD_CELL IFNONNULL 
-\ _DUP_GETFIELD_INT_ICONST_ =  DUP GETFIELD_INT ICONST 
-\ _ICONST_BASTORE_ =  ICONST BASTORE 
-\ _ALOAD_ALOAD_ILOAD_ =  ALOAD ALOAD ILOAD 
-\ _ICONST_IF_ICMPEQ_ =  ICONST IF_ICMPEQ 
-\ _GETFIELD_CELL_ALOAD_GETFIELD_CELL_ =  GETFIELD_CELL ALOAD GETFIELD_CELL 
-\ _ILOAD_IADD_ =  ILOAD IADD 
-\ _ALOAD_ALOAD_ICONST_ =  ALOAD ALOAD ICONST 
-\ _ALOAD_ALOAD_GETFIELD_INT_ =  ALOAD ALOAD GETFIELD_INT 
-\ _ICONST_IADD_PUTFIELD_INT_ =  ICONST IADD PUTFIELD_INT 
-\ _GETFIELD_CELL_IFNULL_ =  GETFIELD_CELL IFNULL 
-\ _PUTFIELD_INT_ALOAD_ICONST_PUTFIELD_INT_ =  PUTFIELD_INT ALOAD ICONST PUTFIELD_INT 
-\ _ALOAD_DUP_GETFIELD_INT_ICONST_ =  ALOAD DUP GETFIELD_INT ICONST 
-\ _ICONST_ISUB_ =  ICONST ISUB 
-\ _ASTORE_ICONST_ =  ASTORE ICONST 
-\ _ACONST_ASTORE_ =  ACONST ASTORE 
-\ _PUTFIELD_CELL_ALOAD_ALOAD_PUTFIELD_CELL_ =  PUTFIELD_CELL ALOAD ALOAD PUTFIELD_CELL 
-\ _ILOAD_ALOAD_GETFIELD_CELL_ =  ILOAD ALOAD GETFIELD_CELL 
-\ _ALOAD_GETFIELD_CELL_IFNULL_ =  ALOAD GETFIELD_CELL IFNULL 
-\ _GETFIELD_INT_IFEQ_ =  GETFIELD_INT IFEQ 
-\ _MONITORENTER_ALOAD_ =  MONITORENTER ALOAD 
-\ _ILOAD_IFEQ_ =  ILOAD IFEQ 
-\ _ILOAD_IFGE_ =  ILOAD IFGE 
-\ _ASTORE_ALOAD_IFNONNULL_ =  ASTORE ALOAD IFNONNULL 
-\ _ICONST_PUTFIELD_INT_ALOAD_ICONST_ =  ICONST PUTFIELD_INT ALOAD ICONST 
-\ _ALOAD_ICONST_PUTFIELD_INT_ALOAD_ICONST_ =  ALOAD ICONST PUTFIELD_INT ALOAD ICONST 
-\ _ALOAD_GETSTATIC_CELL_ =  ALOAD GETSTATIC_CELL 
-\ _GETFIELD_CELL_ASTORE_ =  GETFIELD_CELL ASTORE 
-\ _GETFIELD_CELL_ILOAD_AALOAD_ =  GETFIELD_CELL ILOAD AALOAD 
-\ _ALOAD_GETFIELD_CELL_ALOAD_GETFIELD_CELL_ =  ALOAD GETFIELD_CELL ALOAD GETFIELD_CELL 
-\ _ALOAD_GETFIELD_INT_IFEQ_ =  ALOAD GETFIELD_INT IFEQ 
-\ _ALOAD_GETFIELD_CELL_ILOAD_AALOAD_ =  ALOAD GETFIELD_CELL ILOAD AALOAD 
-\ _ISTORE_ICONST_ =  ISTORE ICONST 
-\ _ARRAYLENGTH_IF_ICMPLT_ =  ARRAYLENGTH IF_ICMPLT 
-\ _ALOAD_ICONST_ALOAD_ =  ALOAD ICONST ALOAD 
-\ _ICONST_IALOAD_ =  ICONST IALOAD 
-\ _ICONST_PUTFIELD_INT_ALOAD_ICONST_PUTFIELD_INT_ =  ICONST PUTFIELD_INT ALOAD ICONST PUTFIELD_INT 
-\ _ASTORE_ICONST_ISTORE_ =  ASTORE ICONST ISTORE 
-\ _GETFIELD_INT_ICONST_IADD_ =  GETFIELD_INT ICONST IADD 
-\ _ICONST_ICONST_BASTORE_ =  ICONST ICONST BASTORE 
-\ _PUTFIELD_INT_ALOAD_ILOAD_ =  PUTFIELD_INT ALOAD ILOAD 
-\ _ILOAD_ALOAD_GETFIELD_INT_ =  ILOAD ALOAD GETFIELD_INT 
-\ _GETFIELD_CELL_GETFIELD_INT_ =  GETFIELD_CELL GETFIELD_INT 
-\ _DUP_ALOAD_ALOAD_ =  DUP ALOAD ALOAD 
-\ _DUP_ICONST_ICONST_BASTORE_ =  DUP ICONST ICONST BASTORE 
-\ _ACONST_PUTFIELD_CELL_ALOAD_ =  ACONST PUTFIELD_CELL ALOAD 
-\ _ALOAD_ALOAD_ALOAD_ALOAD_ =  ALOAD ALOAD ALOAD ALOAD 
-\ _ALOAD_ACONST_PUTFIELD_CELL_ALOAD_ =  ALOAD ACONST PUTFIELD_CELL ALOAD 
-\ _GETFIELD_INT_ILOAD_ =  GETFIELD_INT ILOAD 
-\ _BASTORE_DUP_ =  BASTORE DUP 
-\ _BASTORE_DUP_ICONST_ =  BASTORE DUP ICONST 
-\ _ALOAD_GETFIELD_CELL_ASTORE_ =  ALOAD GETFIELD_CELL ASTORE 
-\ _PUTFIELD_CELL_ALOAD_ICONST_ =  PUTFIELD_CELL ALOAD ICONST 
-\ _BASTORE_DUP_ICONST_ICONST_ =  BASTORE DUP ICONST ICONST 
-\ _BASTORE_DUP_ICONST_ICONST_BASTORE_ =  BASTORE DUP ICONST ICONST BASTORE 
-\ _DUP_ICONST_ICONST_BASTORE_DUP_ =  DUP ICONST ICONST BASTORE DUP 
-\ _ICONST_BASTORE_DUP_ =  ICONST BASTORE DUP 
-\ _ICONST_BASTORE_DUP_ICONST_ =  ICONST BASTORE DUP ICONST 
-\ _ICONST_BASTORE_DUP_ICONST_ICONST_ =  ICONST BASTORE DUP ICONST ICONST 
-\ _ICONST_ICONST_BASTORE_DUP_ =  ICONST ICONST BASTORE DUP 
-\ _ICONST_ICONST_BASTORE_DUP_ICONST_ =  ICONST ICONST BASTORE DUP ICONST 
-\ _ALOAD_PUTFIELD_CELL_ALOAD_ALOAD_PUTFIELD_CELL_ =  ALOAD PUTFIELD_CELL ALOAD ALOAD PUTFIELD_CELL 
-\ _GETFIELD_CELL_ACONST_ =  GETFIELD_CELL ACONST 
-\ _DUP_ACONST_ACONST_ =  DUP ACONST ACONST 
-\ _ALOAD_GETFIELD_CELL_ACONST_ =  ALOAD GETFIELD_CELL ACONST 
-\ _GETFIELD_CELL_ALOAD_GETFIELD_INT_ =  GETFIELD_CELL ALOAD GETFIELD_INT 
-\ _ISTORE_ILOAD_ICONST_ =  ISTORE ILOAD ICONST 
-\ _POP_ICONST_ =  POP ICONST 
-\ _INSTANCEOF_IFEQ_ =  INSTANCEOF IFEQ 
-\ _ALOAD_MONITORENTER_ =  ALOAD MONITORENTER 
-\ _ILOAD_ICONST_IF_ICMPNE_ =  ILOAD ICONST IF_ICMPNE 
-\ _ALOAD_GETFIELD_CELL_ALOAD_GETFIELD_INT_ =  ALOAD GETFIELD_CELL ALOAD GETFIELD_INT 
-\ _DUP_GETFIELD_INT_ICONST_IADD_ =  DUP GETFIELD_INT ICONST IADD 
-\ _PUTFIELD_INT_ALOAD_ICONST_PUTFIELD_INT_ALOAD_ =  PUTFIELD_INT ALOAD ICONST PUTFIELD_INT ALOAD 
-\ _ACONST_ACONST_ICONST_ =  ACONST ACONST ICONST 
-\ _IADD_PUTFIELD_INT_ALOAD_ =  IADD PUTFIELD_INT ALOAD 
-\ _ICONST_ALOAD_GETFIELD_INT_ =  ICONST ALOAD GETFIELD_INT 
-\ _DUP_ACONST_ACONST_ICONST_ =  DUP ACONST ACONST ICONST 
-\ _ALOAD_ILOAD_AALOAD_ =  ALOAD ILOAD AALOAD 
-\ _ISTORE_ALOAD_GETFIELD_CELL_ =  ISTORE ALOAD GETFIELD_CELL 
-\ _ICONST_ISTORE_ALOAD_ =  ICONST ISTORE ALOAD 
-\ _ICONST_AALOAD_ =  ICONST AALOAD 
-\ _GETFIELD_CELL_ALOAD_ALOAD_ =  GETFIELD_CELL ALOAD ALOAD 
-\ _ISTORE_ICONST_ISTORE_ =  ISTORE ICONST ISTORE 
-\ _ALOAD_DUP_GETFIELD_INT_ICONST_IADD_ =  ALOAD DUP GETFIELD_INT ICONST IADD 
-\ _IADD_ISTORE_ =  IADD ISTORE 
-\ _ILOAD_IFLT_ =  ILOAD IFLT 
-\ _GETFIELD_INT_IFNE_ =  GETFIELD_INT IFNE 
-\ _GETSTATIC_CELL_ALOAD_ =  GETSTATIC_CELL ALOAD 
-\ _PUTFIELD_INT_ALOAD_ILOAD_PUTFIELD_INT_ =  PUTFIELD_INT ALOAD ILOAD PUTFIELD_INT 
-\ _PUTFIELD_CELL_ALOAD_GETFIELD_CELL_ =  PUTFIELD_CELL ALOAD GETFIELD_CELL 
-\ _ASTORE_ALOAD_ICONST_ =  ASTORE ALOAD ICONST 
-\ _GETFIELD_INT_ICONST_IADD_PUTFIELD_INT_ =  GETFIELD_INT ICONST IADD PUTFIELD_INT 
-\ _ILOAD_PUTFIELD_INT_ALOAD_ILOAD_ =  ILOAD PUTFIELD_INT ALOAD ILOAD 
-\ _ALOAD_INSTANCEOF_ =  ALOAD INSTANCEOF 
-\ _ALOAD_ILOAD_PUTFIELD_INT_ALOAD_ILOAD_ =  ALOAD ILOAD PUTFIELD_INT ALOAD ILOAD 
-\ _LCONST_LAND_ =  LCONST LAND 
-\ _ILOAD_ICONST_IF_ICMPEQ_ =  ILOAD ICONST IF_ICMPEQ 
-\ _DUP_GETFIELD_INT_ICONST_IADD_PUTFIELD_INT_ =  DUP GETFIELD_INT ICONST IADD PUTFIELD_INT 
-\ _ALOAD_ILOAD_ICONST_ =  ALOAD ILOAD ICONST 
-\ _PUTFIELD_CELL_ALOAD_ALOAD_PUTFIELD_CELL_ALOAD_ =  PUTFIELD_CELL ALOAD ALOAD PUTFIELD_CELL ALOAD 
-\ _ILOAD_IFNE_ =  ILOAD IFNE 
-\ _ILOAD_ILOAD_ILOAD_ =  ILOAD ILOAD ILOAD 
-\ _ALOAD_ICONST_ICONST_ =  ALOAD ICONST ICONST 
-\ _ALOAD_GETFIELD_CELL_ALOAD_ALOAD_ =  ALOAD GETFIELD_CELL ALOAD ALOAD 
-\ _ALOAD_GETFIELD_CELL_GETFIELD_INT_ =  ALOAD GETFIELD_CELL GETFIELD_INT 
-\ _ICONST_ICONST_ICONST_ =  ICONST ICONST ICONST 
-\ _GETFIELD_INT_ISTORE_ =  GETFIELD_INT ISTORE 
-\ _GETFIELD_INT_ICONST_IF_ICMPNE_ =  GETFIELD_INT ICONST IF_ICMPNE 
-\ _GETSTATIC_CELL_ACONST_ALOAD_ =  GETSTATIC_CELL ACONST ALOAD 
-\ _ISTORE_ALOAD_GETFIELD_INT_ =  ISTORE ALOAD GETFIELD_INT 
-\ _ALOAD_MONITORENTER_ALOAD_ =  ALOAD MONITORENTER ALOAD 
-\ _ILOAD_IF_ICMPLT_ =  ILOAD IF_ICMPLT 
-\ _ASTORE_ICONST_ISTORE_GOTO_ =  ASTORE ICONST ISTORE GOTO 
-\ _ALOAD_CHECKCAST_ =  ALOAD CHECKCAST 
-\ _ALOAD_ILOAD_ALOAD_ =  ALOAD ILOAD ALOAD 
-\ _ICONST_IADD_PUTFIELD_INT_ALOAD_ =  ICONST IADD PUTFIELD_INT ALOAD 
-\ _DUP_ASTORE_ =  DUP ASTORE 
-\ _PUTFIELD_CELL_ALOAD_ILOAD_ =  PUTFIELD_CELL ALOAD ILOAD 
-\ _ILOAD_ILOAD_IF_ICMPLT_ =  ILOAD ILOAD IF_ICMPLT 
-\ _ICONST_IF_ICMPLE_ =  ICONST IF_ICMPLE 
-\ _ALOAD_GETFIELD_INT_ISTORE_ =  ALOAD GETFIELD_INT ISTORE 
-\ _ILOAD_PUTFIELD_INT_ALOAD_ILOAD_PUTFIELD_INT_ =  ILOAD PUTFIELD_INT ALOAD ILOAD PUTFIELD_INT 
-\ _ILOAD_ISUB_ =  ILOAD ISUB 
-\ _ALOAD_GETFIELD_INT_IFNE_ =  ALOAD GETFIELD_INT IFNE 
-\ _GETFIELD_CELL_ASTORE_ALOAD_ =  GETFIELD_CELL ASTORE ALOAD 
-\ _ISTORE_ILOAD_ILOAD_ =  ISTORE ILOAD ILOAD 
-\ _ILOAD_IINC_ =  ILOAD IINC 
-\ _ALOAD_GETFIELD_INT_ICONST_IF_ICMPNE_ =  ALOAD GETFIELD_INT ICONST IF_ICMPNE 
-\ _ALOAD_ACONST_ICONST_ =  ALOAD ACONST ICONST 
-\ _POP_GETSTATIC_CELL_ =  POP GETSTATIC_CELL 
-\ _GETFIELD_INT_ALOAD_GETFIELD_CELL_ =  GETFIELD_INT ALOAD GETFIELD_CELL 
-\ _POP_GETSTATIC_CELL_ACONST_ =  POP GETSTATIC_CELL ACONST 
-\ _ALOAD_ICONST_IALOAD_ =  ALOAD ICONST IALOAD 
-\ _GETFIELD_INT_PUTFIELD_INT_ =  GETFIELD_INT PUTFIELD_INT 
-\ _GETSTATIC_INT_IFEQ_ =  GETSTATIC_INT IFEQ 
-\ _ALOAD_ALOAD_ACONST_ =  ALOAD ALOAD ACONST 
-\ _AALOAD_ASTORE_ =  AALOAD ASTORE 
-\ _ALOAD_ICONST_AALOAD_ =  ALOAD ICONST AALOAD 
-\ _PUTFIELD_INT_ALOAD_GETFIELD_CELL_ =  PUTFIELD_INT ALOAD GETFIELD_CELL 
-\ _ASTORE_ALOAD_ACONST_ =  ASTORE ALOAD ACONST 
-\ _PUTFIELD_INT_ALOAD_ILOAD_PUTFIELD_INT_ALOAD_ =  PUTFIELD_INT ALOAD ILOAD PUTFIELD_INT ALOAD 
-\ _PUTFIELD_INT_GOTO_ =  PUTFIELD_INT GOTO 
-\ _PUTSTATIC_CELL_ICONST_ =  PUTSTATIC_CELL ICONST 
-\ _DUP_ALOAD_GETFIELD_CELL_ =  DUP ALOAD GETFIELD_CELL 
-\ _ALOAD_ICONST_ILOAD_ =  ALOAD ICONST ILOAD 
-\ _PUTFIELD_CELL_ALOAD_ICONST_PUTFIELD_INT_ =  PUTFIELD_CELL ALOAD ICONST PUTFIELD_INT 
-\ _GETSTATIC_CELL_ILOAD_ =  GETSTATIC_CELL ILOAD 
-\ _LALOAD_LCONST_ =  LALOAD LCONST 
-\ _ALOAD_ALOAD_GETFIELD_CELL_ALOAD_ =  ALOAD ALOAD GETFIELD_CELL ALOAD 
-\ _IADD_ALOAD_ =  IADD ALOAD 
-\ _ILOAD_ALOAD_ARRAYLENGTH_ =  ILOAD ALOAD ARRAYLENGTH 
-\ _ACONST_ASTORE_ALOAD_ =  ACONST ASTORE ALOAD 
-\ _GETFIELD_CELL_ILOAD_ALOAD_ =  GETFIELD_CELL ILOAD ALOAD 
-\ _ILOAD_ILOAD_IADD_ =  ILOAD ILOAD IADD 
-\ _ICONST_GOTO_ =  ICONST GOTO 
-\ _ICONST_IF_ICMPLT_ =  ICONST IF_ICMPLT 
-\ _LALOAD_LCONST_LAND_ =  LALOAD LCONST LAND 
-\ _ACONST_ICONST_ACONST_ =  ACONST ICONST ACONST 
-\ _GETSTATIC_CELL_PUTFIELD_CELL_ =  GETSTATIC_CELL PUTFIELD_CELL 
-\ _PUTFIELD_INT_ALOAD_GETFIELD_INT_ =  PUTFIELD_INT ALOAD GETFIELD_INT 
-\ _ICONST_DUP2_ =  ICONST DUP2 
-\ _ALOAD_GETFIELD_CELL_ILOAD_ALOAD_ =  ALOAD GETFIELD_CELL ILOAD ALOAD 
-\ _ILOAD_ALOAD_GETFIELD_CELL_ARRAYLENGTH_ =  ILOAD ALOAD GETFIELD_CELL ARRAYLENGTH 
-\ _GETFIELD_INT_ICONST_ISUB_ =  GETFIELD_INT ICONST ISUB 
-\ _ILOAD_ICONST_IAND_ =  ILOAD ICONST IAND 
-\ _CHECKNULL_MONITORENTER_ =  CHECKNULL MONITORENTER 
-\ _ALOAD_GETFIELD_CELL_ASTORE_ALOAD_ =  ALOAD GETFIELD_CELL ASTORE ALOAD 
-\ _ILOAD_ICONST_IADD_ =  ILOAD ICONST IADD 
-\ _PUTFIELD_CELL_ALOAD_ACONST_PUTFIELD_CELL_ =  PUTFIELD_CELL ALOAD ACONST PUTFIELD_CELL 
-\ _ASTORE_CHECKNULL_ =  ASTORE CHECKNULL 
-\ _ASTORE_CHECKNULL_MONITORENTER_ =  ASTORE CHECKNULL MONITORENTER 
-\ _DUP_ASTORE_CHECKNULL_ =  DUP ASTORE CHECKNULL 
-\ _DUP_ASTORE_CHECKNULL_MONITORENTER_ =  DUP ASTORE CHECKNULL MONITORENTER 
-\ _ILOAD_ICONST_IF_ICMPLE_ =  ILOAD ICONST IF_ICMPLE 
-\ _ALOAD_GETFIELD_INT_ALOAD_GETFIELD_CELL_ =  ALOAD GETFIELD_INT ALOAD GETFIELD_CELL 
-\ _ALOAD_ICONST_DUP2_ =  ALOAD ICONST DUP2 
-\ _ALOAD_INSTANCEOF_IFEQ_ =  ALOAD INSTANCEOF IFEQ 
-\ _ASTORE_ALOAD_GETFIELD_CELL_ALOAD_ =  ASTORE ALOAD GETFIELD_CELL ALOAD 
-\ _IINC_ILOAD_ =  IINC ILOAD 
-\ _AALOAD_ALOAD_ =  AALOAD ALOAD 
-\ _ICONST_ALOAD_GETFIELD_CELL_ =  ICONST ALOAD GETFIELD_CELL 
-\ _ISUB_ISTORE_ =  ISUB ISTORE 
-\ _GETFIELD_INT_IADD_ =  GETFIELD_INT IADD 
-\ _ALOAD_ARRAYLENGTH_IF_ICMPLT_ =  ALOAD ARRAYLENGTH IF_ICMPLT 
-\ _ALOAD_GETFIELD_INT_ILOAD_ =  ALOAD GETFIELD_INT ILOAD 
-\ _ALOAD_ACONST_ICONST_ACONST_ =  ALOAD ACONST ICONST ACONST 
-\ _ILOAD_ICONST_IF_ICMPLT_ =  ILOAD ICONST IF_ICMPLT 
-\ _PUTFIELD_CELL_ALOAD_ILOAD_PUTFIELD_INT_ =  PUTFIELD_CELL ALOAD ILOAD PUTFIELD_INT 
-\ _ILOAD_ALOAD_ARRAYLENGTH_IF_ICMPLT_ =  ILOAD ALOAD ARRAYLENGTH IF_ICMPLT 
-\ _GETFIELD_INT_ILOAD_IADD_ =  GETFIELD_INT ILOAD IADD 
-\ _ALOAD_GETFIELD_CELL_ARRAYLENGTH_IF_ICMPLT_ =  ALOAD GETFIELD_CELL ARRAYLENGTH IF_ICMPLT 
-\ _GETFIELD_CELL_ARRAYLENGTH_IF_ICMPLT_ =  GETFIELD_CELL ARRAYLENGTH IF_ICMPLT 
-\ _ALOAD_GETFIELD_INT_IADD_ =  ALOAD GETFIELD_INT IADD 
-\ _LCONST_LASTORE_ =  LCONST LASTORE 
-\ _PUTFIELD_INT_ALOAD_ACONST_ =  PUTFIELD_INT ALOAD ACONST 
-\ _LLOAD_LCONST_ =  LLOAD LCONST 
-\ _BALOAD_ICONST_ =  BALOAD ICONST 
-\ _GETFIELD_INT_PUTFIELD_INT_ALOAD_ =  GETFIELD_INT PUTFIELD_INT ALOAD 
-\ _GETFIELD_CELL_ICONST_ALOAD_ =  GETFIELD_CELL ICONST ALOAD 
-\ _ICONST_LCONST_ =  ICONST LCONST 
-\ _PUTFIELD_CELL_GOTO_ =  PUTFIELD_CELL GOTO 
-\ _ALOAD_GETFIELD_CELL_ICONST_ALOAD_ =  ALOAD GETFIELD_CELL ICONST ALOAD 
-\ _GETFIELD_INT_ISUB_ =  GETFIELD_INT ISUB 
-\ _DUP2_LALOAD_ =  DUP2 LALOAD 
-\ _GETFIELD_CELL_DUP_ =  GETFIELD_CELL DUP 
-\ _CHECKNULL_MONITORENTER_ALOAD_ =  CHECKNULL MONITORENTER ALOAD 
-\ _GETFIELD_CELL_ALOAD_DUP_ =  GETFIELD_CELL ALOAD DUP 
-\ _GETFIELD_CELL_ALOAD_DUP_GETFIELD_INT_ =  GETFIELD_CELL ALOAD DUP GETFIELD_INT 
-\ _GETFIELD_INT_ICONST_IADD_PUTFIELD_INT_ALOAD_ =  GETFIELD_INT ICONST IADD PUTFIELD_INT ALOAD 
-\ _ICONST_LCONST_LASTORE_ =  ICONST LCONST LASTORE 
-\ _ASTORE_CHECKNULL_MONITORENTER_ALOAD_ =  ASTORE CHECKNULL MONITORENTER ALOAD 
-\ _DUP_ASTORE_CHECKNULL_MONITORENTER_ALOAD_ =  DUP ASTORE CHECKNULL MONITORENTER ALOAD 
-\ _ILOAD_AALOAD_ASTORE_ =  ILOAD AALOAD ASTORE 
-\ _POP_ALOAD_ALOAD_ =  POP ALOAD ALOAD 
-\ _GETFIELD_INT_DUP_X1_ =  GETFIELD_INT DUP_X1 
-\ _GETFIELD_INT_IF_ICMPLT_ =  GETFIELD_INT IF_ICMPLT 
-\ _DUP_GETFIELD_INT_DUP_X1_ =  DUP GETFIELD_INT DUP_X1 
-\ _DUP_GETFIELD_INT_DUP_X1_ICONST_ =  DUP GETFIELD_INT DUP_X1 ICONST 
-\ _DUP_X1_ICONST_ =  DUP_X1 ICONST 
-\ _GETFIELD_INT_DUP_X1_ICONST_ =  GETFIELD_INT DUP_X1 ICONST 
-\ _ICONST_ISTORE_ICONST_ =  ICONST ISTORE ICONST 
-\ _DUP_GETFIELD_INT_DUP_X1_ICONST_IADD_ =  DUP GETFIELD_INT DUP_X1 ICONST IADD 
-\ _DUP_X1_ICONST_IADD_ =  DUP_X1 ICONST IADD 
-\ _DUP_X1_ICONST_IADD_PUTFIELD_INT_ =  DUP_X1 ICONST IADD PUTFIELD_INT 
-\ _GETFIELD_INT_DUP_X1_ICONST_IADD_ =  GETFIELD_INT DUP_X1 ICONST IADD 
-\ _GETFIELD_INT_DUP_X1_ICONST_IADD_PUTFIELD_INT_ =  GETFIELD_INT DUP_X1 ICONST IADD PUTFIELD_INT 
-\ _DUP2_LALOAD_LCONST_ =  DUP2 LALOAD LCONST 
-\ _ALOAD_GETFIELD_LONG_ =  ALOAD GETFIELD_LONG 
-\ _LAND_LASTORE_ =  LAND LASTORE 
-\ _ICONST_ISHL_ =  ICONST ISHL 
-\ _ILOAD_ALOAD_GETFIELD_CELL_ARRAYLENGTH_IF_ICMPLT_ =  ILOAD ALOAD GETFIELD_CELL ARRAYLENGTH IF_ICMPLT 
-\ _ICONST_ICONST_ICONST_ICONST_ =  ICONST ICONST ICONST ICONST 
-\ _GETFIELD_INT_ISTORE_ALOAD_ =  GETFIELD_INT ISTORE ALOAD 
-\ _ALOAD_LLOAD_ =  ALOAD LLOAD 
-\ _ASTORE_ACONST_ASTORE_ =  ASTORE ACONST ASTORE 
-\ _ALOAD_AASTORE_ =  ALOAD AASTORE 
-\ _ALOAD_GETFIELD_INT_ISUB_ =  ALOAD GETFIELD_INT ISUB 
-\ _MONITORENTER_ALOAD_GETFIELD_CELL_ =  MONITORENTER ALOAD GETFIELD_CELL 
-\ _DUP_X1_PUTFIELD_INT_ =  DUP_X1 PUTFIELD_INT 
-\ _GETSTATIC_CELL_ASTORE_ =  GETSTATIC_CELL ASTORE 
-\ _ICONST_ISTORE_ICONST_ISTORE_ =  ICONST ISTORE ICONST ISTORE 
-\ _ACONST_PUTFIELD_CELL_ALOAD_ACONST_ =  ACONST PUTFIELD_CELL ALOAD ACONST 
-\ _ALOAD_ACONST_PUTFIELD_CELL_ALOAD_ACONST_ =  ALOAD ACONST PUTFIELD_CELL ALOAD ACONST 
-\ _ILOAD_ACONST_ =  ILOAD ACONST 
-\ _ISTORE_ICONST_ISTORE_GOTO_ =  ISTORE ICONST ISTORE GOTO 
-\ _ALOAD_DUP_GETFIELD_INT_DUP_X1_ =  ALOAD DUP GETFIELD_INT DUP_X1 
-\ _ALOAD_DUP_GETFIELD_INT_DUP_X1_ICONST_ =  ALOAD DUP GETFIELD_INT DUP_X1 ICONST 
-\ _ALOAD_GETFIELD_INT_IF_ICMPLT_ =  ALOAD GETFIELD_INT IF_ICMPLT 
-\ _BALOAD_ICONST_IAND_ =  BALOAD ICONST IAND 
-\ _ALOAD_GETSTATIC_CELL_PUTFIELD_CELL_ =  ALOAD GETSTATIC_CELL PUTFIELD_CELL 
-\ _PUTFIELD_CELL_ALOAD_ACONST_PUTFIELD_CELL_ALOAD_ =  PUTFIELD_CELL ALOAD ACONST PUTFIELD_CELL ALOAD 
-\ _DUP_ICONST_LCONST_ =  DUP ICONST LCONST 
-\ _DUP_ICONST_LCONST_LASTORE_ =  DUP ICONST LCONST LASTORE 
-\ _ALOAD_GETFIELD_INT_ISTORE_ALOAD_ =  ALOAD GETFIELD_INT ISTORE ALOAD 
-\ _DUP_GETFIELD_INT_ILOAD_ =  DUP GETFIELD_INT ILOAD 
-\ _ISTORE_ALOAD_ALOAD_ =  ISTORE ALOAD ALOAD 
-\ _DUP_ICONST_ICONST_IASTORE_AASTORE_ =  DUP ICONST ICONST IASTORE AASTORE 
-\ _IASTORE_AASTORE_ =  IASTORE AASTORE 
-\ _ICONST_IASTORE_AASTORE_ =  ICONST IASTORE AASTORE 
-\ _ICONST_ICONST_IASTORE_AASTORE_ =  ICONST ICONST IASTORE AASTORE 
-\ _ALOAD_GETFIELD_INT_PUTFIELD_INT_ =  ALOAD GETFIELD_INT PUTFIELD_INT 
-\ _ALOAD_ALOAD_GETFIELD_INT_PUTFIELD_INT_ =  ALOAD ALOAD GETFIELD_INT PUTFIELD_INT 
-\ _ALOAD_ALOAD_PUTFIELD_CELL_ALOAD_ILOAD_ =  ALOAD ALOAD PUTFIELD_CELL ALOAD ILOAD 
-\ _ALOAD_PUTFIELD_CELL_ALOAD_ILOAD_ =  ALOAD PUTFIELD_CELL ALOAD ILOAD 
-\ _IASTORE_ALOAD_ =  IASTORE ALOAD 
-\ _ICONST_ISHR_ =  ICONST ISHR 
-\ _ALOAD_DUP_GETFIELD_INT_ILOAD_ =  ALOAD DUP GETFIELD_INT ILOAD 
-\ _GETFIELD_CELL_PUTFIELD_CELL_ =  GETFIELD_CELL PUTFIELD_CELL 
-\ _IASTORE_AASTORE_DUP_ =  IASTORE AASTORE DUP 
-\ _IASTORE_AASTORE_DUP_ICONST_ =  IASTORE AASTORE DUP ICONST 
-\ _IASTORE_AASTORE_DUP_ICONST_ICONST_ =  IASTORE AASTORE DUP ICONST ICONST 
-\ _ICONST_IASTORE_AASTORE_DUP_ =  ICONST IASTORE AASTORE DUP 
-\ _ICONST_IASTORE_AASTORE_DUP_ICONST_ =  ICONST IASTORE AASTORE DUP ICONST 
-\ _ICONST_ICONST_IASTORE_AASTORE_DUP_ =  ICONST ICONST IASTORE AASTORE DUP 
-\ _ALOAD_ALOAD_ILOAD_ILOAD_ =  ALOAD ALOAD ILOAD ILOAD 
-\ _GETFIELD_CELL_ALOAD_DUP_GETFIELD_INT_DUP_X1_ =  GETFIELD_CELL ALOAD DUP GETFIELD_INT DUP_X1 
-\ _ALOAD_GETFIELD_CELL_ALOAD_DUP_ =  ALOAD GETFIELD_CELL ALOAD DUP 
-\ _ALOAD_GETFIELD_CELL_ALOAD_DUP_GETFIELD_INT_ =  ALOAD GETFIELD_CELL ALOAD DUP GETFIELD_INT 
-\ _ISUB_PUTFIELD_INT_ =  ISUB PUTFIELD_INT 
-\ _ALOAD_GETFIELD_CELL_DUP_ =  ALOAD GETFIELD_CELL DUP 
-\ _IAND_IFEQ_ =  IAND IFEQ 
-\ _ACONST_PUTFIELD_CELL_ALOAD_ACONST_PUTFIELD_CELL_ =  ACONST PUTFIELD_CELL ALOAD ACONST PUTFIELD_CELL 
-\ _ILOAD_AALOAD_ALOAD_ =  ILOAD AALOAD ALOAD 
-\ _ILOAD_IALOAD_ =  ILOAD IALOAD 
-\ _ALOAD_ALOAD_ALOAD_ALOAD_ALOAD_ =  ALOAD ALOAD ALOAD ALOAD ALOAD 
-\ _DUP_ILOAD_ =  DUP ILOAD 
-\ _AASTORE_ALOAD_ =  AASTORE ALOAD 
-\ _ICONST_IAND_IFEQ_ =  ICONST IAND IFEQ 
-\ _CHECKCAST_ASTORE_ALOAD_ALOAD_ =  CHECKCAST ASTORE ALOAD ALOAD 
-\ _ICONST_PUTFIELD_INT_ALOAD_ACONST_ =  ICONST PUTFIELD_INT ALOAD ACONST 
-\ _ALOAD_ICONST_PUTFIELD_INT_ALOAD_ACONST_ =  ALOAD ICONST PUTFIELD_INT ALOAD ACONST 
-\ _ALOAD_ICONST_ALOAD_GETFIELD_INT_ =  ALOAD ICONST ALOAD GETFIELD_INT 
-\ _POP_ALOAD_GETFIELD_CELL_ =  POP ALOAD GETFIELD_CELL 
-\ _ALOAD_ALOAD_ALOAD_ILOAD_ =  ALOAD ALOAD ALOAD ILOAD 
-\ _ASTORE_ILOAD_ =  ASTORE ILOAD 
-\ _ISTORE_ALOAD_ICONST_ =  ISTORE ALOAD ICONST 
-\ _PUTFIELD_CELL_ALOAD_ILOAD_PUTFIELD_INT_ALOAD_ =  PUTFIELD_CELL ALOAD ILOAD PUTFIELD_INT ALOAD 
-\ _PUTFIELD_INT_ALOAD_ALOAD_GETFIELD_CELL_ =  PUTFIELD_INT ALOAD ALOAD GETFIELD_CELL 
-\ _ILOAD_IADD_PUTFIELD_INT_ =  ILOAD IADD PUTFIELD_INT 
-\ _IALOAD_ALOAD_ =  IALOAD ALOAD 
-\ _DUP_ACONST_ICONST_ =  DUP ACONST ICONST 
-\ _DUP_GETFIELD_INT_ICONST_ISUB_ =  DUP GETFIELD_INT ICONST ISUB 
-\ _ISTORE_ALOAD_ILOAD_ =  ISTORE ALOAD ILOAD 
-\ _DUP_GETFIELD_INT_ILOAD_IADD_ =  DUP GETFIELD_INT ILOAD IADD 
-\ _ALOAD_PUTFIELD_CELL_ALOAD_ILOAD_PUTFIELD_INT_ =  ALOAD PUTFIELD_CELL ALOAD ILOAD PUTFIELD_INT 
-\ _GETFIELD_INT_IF_ICMPGE_ =  GETFIELD_INT IF_ICMPGE 
-\ _GETFIELD_INT_IF_ICMPLE_ =  GETFIELD_INT IF_ICMPLE 
-\ _GETSTATIC_CELL_ASTORE_ALOAD_ =  GETSTATIC_CELL ASTORE ALOAD 
-\ _ISTORE_ALOAD_GETFIELD_CELL_ILOAD_ =  ISTORE ALOAD GETFIELD_CELL ILOAD 
-\ _PUTFIELD_CELL_ALOAD_ALOAD_GETFIELD_CELL_ =  PUTFIELD_CELL ALOAD ALOAD GETFIELD_CELL 
-\ _ALOAD_GETFIELD_INT_IF_ICMPLE_ =  ALOAD GETFIELD_INT IF_ICMPLE 
-\ _ALOAD_DUP_GETFIELD_INT_ILOAD_IADD_ =  ALOAD DUP GETFIELD_INT ILOAD IADD 
-\ _ALOAD_GETFIELD_INT_PUTFIELD_INT_ALOAD_ =  ALOAD GETFIELD_INT PUTFIELD_INT ALOAD 
-\ _LCONST_IF_LCMPEQ_ =  LCONST IF_LCMPEQ 
-\ _POP_GOTO_ =  POP GOTO 
-\ _PUTFIELD_CELL_ALOAD_ICONST_PUTFIELD_INT_ALOAD_ =  PUTFIELD_CELL ALOAD ICONST PUTFIELD_INT ALOAD 
-\ _ALOAD_ALOAD_GETFIELD_INT_PUTFIELD_INT_ALOAD_ =  ALOAD ALOAD GETFIELD_INT PUTFIELD_INT ALOAD 
-\ _GETFIELD_CELL_CHECKCAST_ =  GETFIELD_CELL CHECKCAST 
-\ _LAND_LCONST_ =  LAND LCONST 
-\ _ARRAYLENGTH_ICONST_ =  ARRAYLENGTH ICONST 
-\ _GETFIELD_INT_ILOAD_IADD_PUTFIELD_INT_ =  GETFIELD_INT ILOAD IADD PUTFIELD_INT 
-\ _GETFIELD_INT_PUTFIELD_INT_ALOAD_ALOAD_ =  GETFIELD_INT PUTFIELD_INT ALOAD ALOAD 
-\ _ILOAD_ICONST_ISHR_ =  ILOAD ICONST ISHR 
-\ _INSTANCEOF_IFNE_ =  INSTANCEOF IFNE 
-\ _ALOAD_GETFIELD_CELL_CHECKCAST_ =  ALOAD GETFIELD_CELL CHECKCAST 
-\ _DUP_GETFIELD_INT_ILOAD_IADD_PUTFIELD_INT_ =  DUP GETFIELD_INT ILOAD IADD PUTFIELD_INT 
-\ _GETFIELD_CELL_DUP_ASTORE_ =  GETFIELD_CELL DUP ASTORE 
-\ _ALOAD_GETFIELD_CELL_DUP_ASTORE_ =  ALOAD GETFIELD_CELL DUP ASTORE 
-\ _CHECKNULL_MONITORENTER_ALOAD_GETFIELD_CELL_ =  CHECKNULL MONITORENTER ALOAD GETFIELD_CELL 
-\ _GETFIELD_CELL_GETFIELD_CELL_ALOAD_ =  GETFIELD_CELL GETFIELD_CELL ALOAD 
-\ _ASTORE_CHECKNULL_MONITORENTER_ALOAD_GETFIELD_CELL_ =  ASTORE CHECKNULL MONITORENTER ALOAD GETFIELD_CELL 
-\ _ASTORE_GETSTATIC_CELL_ =  ASTORE GETSTATIC_CELL 
-\ _ALOAD_GETFIELD_CELL_DUP_ASTORE_CHECKNULL_ =  ALOAD GETFIELD_CELL DUP ASTORE CHECKNULL 
-\ _GETFIELD_CELL_DUP_ASTORE_CHECKNULL_ =  GETFIELD_CELL DUP ASTORE CHECKNULL 
-\ _GETFIELD_CELL_DUP_ASTORE_CHECKNULL_MONITORENTER_ =  GETFIELD_CELL DUP ASTORE CHECKNULL MONITORENTER 
-\ _ICONST_ALOAD_ARRAYLENGTH_ =  ICONST ALOAD ARRAYLENGTH 
-\ _ALOAD_ALOAD_ALOAD_GETFIELD_CELL_ =  ALOAD ALOAD ALOAD GETFIELD_CELL 
-\ _DUP_ISTORE_ =  DUP ISTORE 
-\ _ALOAD_DUP_GETFIELD_INT_ICONST_ISUB_ =  ALOAD DUP GETFIELD_INT ICONST ISUB 
-\ _ALOAD_ICONST_ALOAD_ARRAYLENGTH_ =  ALOAD ICONST ALOAD ARRAYLENGTH 
-\ _ILOAD_PUTFIELD_INT_ALOAD_ALOAD_ =  ILOAD PUTFIELD_INT ALOAD ALOAD 
-\ _ALOAD_GETFIELD_INT_IF_ICMPGE_ =  ALOAD GETFIELD_INT IF_ICMPGE 
-\ _ALOAD_ILOAD_PUTFIELD_INT_ALOAD_ALOAD_ =  ALOAD ILOAD PUTFIELD_INT ALOAD ALOAD 
-\ _CHECKCAST_ASTORE_ALOAD_IFNONNULL_ =  CHECKCAST ASTORE ALOAD IFNONNULL 
-\ _GETSTATIC_CELL_ASTORE_ALOAD_IFNULL_ =  GETSTATIC_CELL ASTORE ALOAD IFNULL 
-\ _ICONST_ALOAD_ICONST_ =  ICONST ALOAD ICONST 
-\ _GETFIELD_CELL_ALOAD_GETFIELD_CELL_ALOAD_ =  GETFIELD_CELL ALOAD GETFIELD_CELL ALOAD 
-\ _GETFIELD_CELL_ALOAD_ILOAD_ =  GETFIELD_CELL ALOAD ILOAD 
-\ _ALOAD_ALOAD_GETFIELD_CELL_ILOAD_ =  ALOAD ALOAD GETFIELD_CELL ILOAD 
-\ _ALOAD_GETFIELD_CELL_PUTFIELD_CELL_ =  ALOAD GETFIELD_CELL PUTFIELD_CELL 
-\ _GETFIELD_CELL_ALOAD_ICONST_ =  GETFIELD_CELL ALOAD ICONST 
-\ _ICONST_ICONST_ICONST_ICONST_ICONST_ =  ICONST ICONST ICONST ICONST ICONST 
-\ _ISTORE_ALOAD_GETFIELD_INT_ISTORE_ =  ISTORE ALOAD GETFIELD_INT ISTORE 
-\ _ALOAD_GETFIELD_CELL_ALOAD_ILOAD_ =  ALOAD GETFIELD_CELL ALOAD ILOAD 
-\ _PUTFIELD_INT_ILOAD_ =  PUTFIELD_INT ILOAD 
-\ _ICONST_ISUB_PUTFIELD_INT_ =  ICONST ISUB PUTFIELD_INT 
-\ _ISTORE_ACONST_ =  ISTORE ACONST 
-\ _ALOAD_ILOAD_ILOAD_ILOAD_ =  ALOAD ILOAD ILOAD ILOAD 
-\ _ICONST_PUTFIELD_INT_ALOAD_ALOAD_ =  ICONST PUTFIELD_INT ALOAD ALOAD 
-\ _ILOAD_ICONST_ISUB_ =  ILOAD ICONST ISUB 
-\ _LAND_LCONST_IF_LCMPEQ_ =  LAND LCONST IF_LCMPEQ 
-\ _ALOAD_ILOAD_IINC_ =  ALOAD ILOAD IINC 
-\ _ISTORE_ILOAD_IFGE_ =  ISTORE ILOAD IFGE 
-\ _GETFIELD_CELL_ILOAD_AALOAD_ASTORE_ =  GETFIELD_CELL ILOAD AALOAD ASTORE 
-\ _ALOAD_ICONST_PUTFIELD_INT_ALOAD_ALOAD_ =  ALOAD ICONST PUTFIELD_INT ALOAD ALOAD 
-\ _ILOAD_ILOAD_ISUB_ =  ILOAD ILOAD ISUB 
-\ _AALOAD_ACONST_ =  AALOAD ACONST 
-\ _ALOAD_GETFIELD_CELL_ALOAD_GETFIELD_CELL_ALOAD_ =  ALOAD GETFIELD_CELL ALOAD GETFIELD_CELL ALOAD 
-\ _ILOAD_IF_ICMPGE_ =  ILOAD IF_ICMPGE 
-\ _DUP_ALOAD_ICONST_ =  DUP ALOAD ICONST 
-\ _ALOAD_ALOAD_GETFIELD_CELL_PUTFIELD_CELL_ =  ALOAD ALOAD GETFIELD_CELL PUTFIELD_CELL 
-\ _ACONST_ACONST_ACONST_ =  ACONST ACONST ACONST 
-\ _ACONST_ASTORE_ACONST_ =  ACONST ASTORE ACONST 
-\ _ALOAD_ICONST_ACONST_ =  ALOAD ICONST ACONST 
-\ _ASTORE_ALOAD_ALOAD_GETFIELD_CELL_ =  ASTORE ALOAD ALOAD GETFIELD_CELL 
-\ _GETFIELD_CELL_GETFIELD_CELL_GETFIELD_INT_ =  GETFIELD_CELL GETFIELD_CELL GETFIELD_INT 
-\ _GETFIELD_CELL_ILOAD_ICONST_ =  GETFIELD_CELL ILOAD ICONST 
-\ _ALOAD_ILOAD_ICONST_IADD_ =  ALOAD ILOAD ICONST IADD 
-\ _ALOAD_GETFIELD_CELL_GETFIELD_CELL_GETFIELD_INT_ =  ALOAD GETFIELD_CELL GETFIELD_CELL GETFIELD_INT 
-\ _PUTSTATIC_CELL_ACONST_ACONST_ =  PUTSTATIC_CELL ACONST ACONST 
-\ _ILOAD_ISTORE_ =  ILOAD ISTORE 
-\ _ALOAD_ALOAD_GETFIELD_INT_ICONST_ =  ALOAD ALOAD GETFIELD_INT ICONST 
-\ _GETFIELD_INT_IF_ICMPEQ_ =  GETFIELD_INT IF_ICMPEQ 
-\ _ALOAD_GETFIELD_CELL_ILOAD_AALOAD_ASTORE_ =  ALOAD GETFIELD_CELL ILOAD AALOAD ASTORE 
-\ _ILOAD_ALOAD_ILOAD_ =  ILOAD ALOAD ILOAD 
-\ _ILOAD_ILOAD_ILOAD_ILOAD_ =  ILOAD ILOAD ILOAD ILOAD 
-\ _ILOAD_IF_ICMPNE_ =  ILOAD IF_ICMPNE 
-\ _ISTORE_ILOAD_ICONST_IF_ICMPEQ_ =  ISTORE ILOAD ICONST IF_ICMPEQ 
-\ _ALOAD_ASTORE_ =  ALOAD ASTORE 
-\ _GETFIELD_CELL_ALOAD_GETFIELD_INT_ALOAD_ =  GETFIELD_CELL ALOAD GETFIELD_INT ALOAD 
-\ _GETFIELD_CELL_PUTFIELD_CELL_ALOAD_ =  GETFIELD_CELL PUTFIELD_CELL ALOAD 
-\ _ALOAD_GETFIELD_CELL_ILOAD_ICONST_ =  ALOAD GETFIELD_CELL ILOAD ICONST 
-\ _POP_ACONST_ =  POP ACONST 
-\ _PUTFIELD_INT_ALOAD_ALOAD_PUTFIELD_CELL_ =  PUTFIELD_INT ALOAD ALOAD PUTFIELD_CELL 
-\ _PUTFIELD_INT_ALOAD_DUP_ =  PUTFIELD_INT ALOAD DUP 
-\ _PUTFIELD_INT_ALOAD_DUP_GETFIELD_INT_ =  PUTFIELD_INT ALOAD DUP GETFIELD_INT 
-\ _ALOAD_ACONST_ACONST_ =  ALOAD ACONST ACONST 
-\ _ALOAD_ILOAD_ACONST_ =  ALOAD ILOAD ACONST 
-\ _LCONST_LAND_LCONST_ =  LCONST LAND LCONST 
-\ _ALOAD_GETFIELD_CELL_ALOAD_GETFIELD_INT_ALOAD_ =  ALOAD GETFIELD_CELL ALOAD GETFIELD_INT ALOAD 
-\ _IASTORE_ALOAD_ICONST_ =  IASTORE ALOAD ICONST 
-\ _AASTORE_IINC_ =  AASTORE IINC 
-\ _CHECKCAST_ASTORE_ALOAD_IFNULL_ =  CHECKCAST ASTORE ALOAD IFNULL 
-\ _DUP_ICONST_LCONST_LASTORE_DUP_ =  DUP ICONST LCONST LASTORE DUP 
-\ _ICONST_LCONST_LASTORE_DUP_ =  ICONST LCONST LASTORE DUP 
-\ _ICONST_LCONST_LASTORE_DUP_ICONST_ =  ICONST LCONST LASTORE DUP ICONST 
-\ _ILOAD_ALOAD_AASTORE_ =  ILOAD ALOAD AASTORE 
-\ _ILOAD_ALOAD_ALOAD_ =  ILOAD ALOAD ALOAD 
-\ _LASTORE_DUP_ =  LASTORE DUP 
-\ _LASTORE_DUP_ICONST_ =  LASTORE DUP ICONST 
-\ _LASTORE_DUP_ICONST_LCONST_ =  LASTORE DUP ICONST LCONST 
-\ _LASTORE_DUP_ICONST_LCONST_LASTORE_ =  LASTORE DUP ICONST LCONST LASTORE 
-\ _LCONST_LASTORE_DUP_ =  LCONST LASTORE DUP 
-\ _LCONST_LASTORE_DUP_ICONST_ =  LCONST LASTORE DUP ICONST 
-\ _LCONST_LASTORE_DUP_ICONST_LCONST_ =  LCONST LASTORE DUP ICONST LCONST 
-\ _ALOAD_GETFIELD_CELL_GETFIELD_CELL_ALOAD_ =  ALOAD GETFIELD_CELL GETFIELD_CELL ALOAD 
-\ _LASTORE_ALOAD_ =  LASTORE ALOAD 
-\ _GETFIELD_INT_ICONST_ISUB_PUTFIELD_INT_ =  GETFIELD_INT ICONST ISUB PUTFIELD_INT 
-\ _ICONST_IALOAD_ALOAD_ =  ICONST IALOAD ALOAD 
-\ _ILOAD_IF_ICMPGT_ =  ILOAD IF_ICMPGT 
-\ _CALOAD_ISTORE_ =  CALOAD ISTORE 
-\ _LCONST_LAND_LCONST_IF_LCMPEQ_ =  LCONST LAND LCONST IF_LCMPEQ 
-\ _ICONST_IMUL_ =  ICONST IMUL 
-\ _ILOAD_IF_ICMPLE_ =  ILOAD IF_ICMPLE 
-\ _ISUB_PUTFIELD_INT_ALOAD_ =  ISUB PUTFIELD_INT ALOAD 
-\ _CHECKCAST_PUTFIELD_CELL_ =  CHECKCAST PUTFIELD_CELL 
-\ _DUP_GETFIELD_INT_ICONST_ISUB_PUTFIELD_INT_ =  DUP GETFIELD_INT ICONST ISUB PUTFIELD_INT 
-\ _ALOAD_CHECKCAST_ASTORE_ =  ALOAD CHECKCAST ASTORE 
-\ _GETFIELD_INT_IF_ICMPNE_ =  GETFIELD_INT IF_ICMPNE 
-\ _ILOAD_BALOAD_ =  ILOAD BALOAD 
-\ _AALOAD_ASTORE_ALOAD_ =  AALOAD ASTORE ALOAD 
-\ _PUTSTATIC_INT_ICONST_ =  PUTSTATIC_INT ICONST 
-\ _LASTORE_ALOAD_ICONST_ =  LASTORE ALOAD ICONST 
-\ _ICONST_ILOAD_ICONST_ =  ICONST ILOAD ICONST 
-\ _ILOAD_GETSTATIC_CELL_ =  ILOAD GETSTATIC_CELL 
-\ _ILOAD_IADD_ALOAD_ =  ILOAD IADD ALOAD 
-\ _ISTORE_ILOAD_ICONST_IF_ICMPNE_ =  ISTORE ILOAD ICONST IF_ICMPNE 
-\ _GETFIELD_INT_ALOAD_GETFIELD_INT_ISUB_ =  GETFIELD_INT ALOAD GETFIELD_INT ISUB 
-\ _GETFIELD_INT_ISTORE_ALOAD_GETFIELD_INT_ =  GETFIELD_INT ISTORE ALOAD GETFIELD_INT 
-\ _GETSTATIC_INT_ICONST_ =  GETSTATIC_INT ICONST 
-\ _IADD_ILOAD_ =  IADD ILOAD 
-\ _GETFIELD_CELL_ALOAD_ILOAD_ILOAD_ =  GETFIELD_CELL ALOAD ILOAD ILOAD 
-\ _PUTFIELD_INT_ALOAD_ALOAD_GETFIELD_INT_ =  PUTFIELD_INT ALOAD ALOAD GETFIELD_INT 
-\ _ILOAD_ALOAD_GETFIELD_INT_IF_ICMPLT_ =  ILOAD ALOAD GETFIELD_INT IF_ICMPLT 
-\ _ACONST_GOTO_ =  ACONST GOTO 
-\ _ALOAD_GETFIELD_CELL_ALOAD_ILOAD_ILOAD_ =  ALOAD GETFIELD_CELL ALOAD ILOAD ILOAD 
-\ _ALOAD_GETFIELD_INT_ISTORE_ALOAD_GETFIELD_INT_ =  ALOAD GETFIELD_INT ISTORE ALOAD GETFIELD_INT 
-\ _LASTORE_ILOAD_ =  LASTORE ILOAD 
-\ _GETFIELD_CELL_ICONST_AALOAD_ =  GETFIELD_CELL ICONST AALOAD 
-\ _IADD_ISTORE_ILOAD_ =  IADD ISTORE ILOAD 
-\ _ALOAD_GETFIELD_CELL_ILOAD_ALOAD_AASTORE_ =  ALOAD GETFIELD_CELL ILOAD ALOAD AASTORE 
-\ _DUP_ALOAD_ALOAD_ALOAD_ =  DUP ALOAD ALOAD ALOAD 
-\ _GETFIELD_CELL_GETSTATIC_CELL_ =  GETFIELD_CELL GETSTATIC_CELL 
-\ _GETFIELD_CELL_ILOAD_ALOAD_AASTORE_ =  GETFIELD_CELL ILOAD ALOAD AASTORE 
-\ _AALOAD_ASTORE_GOTO_ =  AALOAD ASTORE GOTO 
-\ _ALOAD_GETFIELD_CELL_ILOAD_IINC_ =  ALOAD GETFIELD_CELL ILOAD IINC 
-\ _GETFIELD_CELL_ILOAD_IINC_ =  GETFIELD_CELL ILOAD IINC 
-\ _ILOAD_AALOAD_ASTORE_GOTO_ =  ILOAD AALOAD ASTORE GOTO 
-\ _ALOAD_ALOAD_GETFIELD_CELL_GETFIELD_CELL_ =  ALOAD ALOAD GETFIELD_CELL GETFIELD_CELL 
-\ _ALOAD_ALOAD_MONITOREXIT_ =  ALOAD ALOAD MONITOREXIT 
-\ _GETFIELD_CELL_ASTORE_GOTO_ =  GETFIELD_CELL ASTORE GOTO 
-\ _ILOAD_IFLE_ =  ILOAD IFLE 
-\ _ISUB_ISTORE_GOTO_ =  ISUB ISTORE GOTO 
-\ _ALOAD_GETFIELD_CELL_ALOAD_ICONST_ =  ALOAD GETFIELD_CELL ALOAD ICONST 
-\ _IADD_ISTORE_ALOAD_ =  IADD ISTORE ALOAD 
-\ _IALOAD_ALOAD_ICONST_ =  IALOAD ALOAD ICONST 
-\ _PUTFIELD_INT_ICONST_ =  PUTFIELD_INT ICONST 
-\ _ALOAD_GETFIELD_INT_ALOAD_GETFIELD_INT_ISUB_ =  ALOAD GETFIELD_INT ALOAD GETFIELD_INT ISUB 
-\ _ILOAD_CALOAD_ =  ILOAD CALOAD 
-\ _ALOAD_INSTANCEOF_IFNE_ =  ALOAD INSTANCEOF IFNE 
-\ _DUP_GETSTATIC_CELL_ =  DUP GETSTATIC_CELL 
-\ _IADD_ICONST_ =  IADD ICONST 
-\ _IAND_ISTORE_ =  IAND ISTORE 
-\ _ISTORE_ALOAD_GETFIELD_CELL_ILOAD_AALOAD_ =  ISTORE ALOAD GETFIELD_CELL ILOAD AALOAD 
-\ _IALOAD_ALOAD_ICONST_IALOAD_ =  IALOAD ALOAD ICONST IALOAD 
-\ _ALOAD_GETFIELD_CELL_ICONST_AALOAD_ =  ALOAD GETFIELD_CELL ICONST AALOAD 
-\ _ALOAD_ILOAD_IALOAD_ =  ALOAD ILOAD IALOAD 
-\ _MONITORENTER_ALOAD_GETFIELD_INT_ =  MONITORENTER ALOAD GETFIELD_INT 
-\ _ALOAD_GETFIELD_CELL_PUTFIELD_CELL_ALOAD_ =  ALOAD GETFIELD_CELL PUTFIELD_CELL ALOAD 
-\ _ALOAD_GETFIELD_INT_ALOAD_GETFIELD_CELL_ARRAYLENGTH_ =  ALOAD GETFIELD_INT ALOAD GETFIELD_CELL ARRAYLENGTH 
-\ _ARRAYLENGTH_IF_ICMPLE_ =  ARRAYLENGTH IF_ICMPLE 
-\ _GETFIELD_INT_ALOAD_GETFIELD_CELL_ARRAYLENGTH_ =  GETFIELD_INT ALOAD GETFIELD_CELL ARRAYLENGTH 
-\ _ISTORE_ILOAD_ALOAD_ =  ISTORE ILOAD ALOAD 
-\ _ICONST_ISTORE_ALOAD_GETFIELD_CELL_ =  ICONST ISTORE ALOAD GETFIELD_CELL 
-\ _ALOAD_ALOAD_GETFIELD_CELL_ILOAD_AALOAD_ =  ALOAD ALOAD GETFIELD_CELL ILOAD AALOAD 
-\ _ALOAD_GETFIELD_CELL_ASTORE_GOTO_ =  ALOAD GETFIELD_CELL ASTORE GOTO 
-\ _GETFIELD_CELL_ILOAD_AALOAD_ALOAD_ =  GETFIELD_CELL ILOAD AALOAD ALOAD 
-\ _ISTORE_ALOAD_GETFIELD_CELL_ALOAD_ =  ISTORE ALOAD GETFIELD_CELL ALOAD 
-\ _ALOAD_GETFIELD_CELL_GETSTATIC_CELL_ =  ALOAD GETFIELD_CELL GETSTATIC_CELL 
-\ _ALOAD_GETFIELD_CELL_ILOAD_AALOAD_ALOAD_ =  ALOAD GETFIELD_CELL ILOAD AALOAD ALOAD 
-\ _ARRAYLENGTH_ILOAD_ =  ARRAYLENGTH ILOAD 
-\ _GETFIELD_INT_ICONST_IF_ICMPEQ_ =  GETFIELD_INT ICONST IF_ICMPEQ 
-\ _ISHL_IOR_ =  ISHL IOR 
-\ _ACONST_ASTORE_ACONST_ASTORE_ =  ACONST ASTORE ACONST ASTORE 
-\ _ICONST_ISUB_ISTORE_ =  ICONST ISUB ISTORE 
-\ _DUP_ALOAD_ILOAD_ =  DUP ALOAD ILOAD 
-\ _ICONST_PUTFIELD_INT_GOTO_ =  ICONST PUTFIELD_INT GOTO 
-\ _IINC_ILOAD_IFGE_ =  IINC ILOAD IFGE 
-\ _GETSTATIC_CELL_IFNONNULL_ =  GETSTATIC_CELL IFNONNULL 
-\ _ILOAD_IADD_ISTORE_ =  ILOAD IADD ISTORE 
-\ _ALOAD_ALOAD_ALOAD_ICONST_ =  ALOAD ALOAD ALOAD ICONST 
-\ _ALOAD_ICONST_PUTFIELD_INT_GOTO_ =  ALOAD ICONST PUTFIELD_INT GOTO 
-\ _ICONST_IF_ICMPGT_ =  ICONST IF_ICMPGT 
-\ _ICONST_ISUB_PUTFIELD_INT_ALOAD_ =  ICONST ISUB PUTFIELD_INT ALOAD 
-\ _ALOAD_ALOAD_GETFIELD_CELL_PUTFIELD_CELL_ALOAD_ =  ALOAD ALOAD GETFIELD_CELL PUTFIELD_CELL ALOAD 
-\ _ICONST_IAND_ISTORE_ =  ICONST IAND ISTORE 
-\ _LSTORE_ALOAD_ =  LSTORE ALOAD 
-\ _ASTORE_ICONST_ISTORE_ALOAD_ =  ASTORE ICONST ISTORE ALOAD 
-\ _IADD_PUTFIELD_INT_ALOAD_GETFIELD_INT_ =  IADD PUTFIELD_INT ALOAD GETFIELD_INT 
-\ _ICONST_BALOAD_ =  ICONST BALOAD 
-\ _ALOAD_MONITORENTER_ALOAD_GETFIELD_INT_ =  ALOAD MONITORENTER ALOAD GETFIELD_INT 
-\ _CHECKCAST_ASTORE_ALOAD_GETFIELD_CELL_ =  CHECKCAST ASTORE ALOAD GETFIELD_CELL 
-\ _ASTORE_ALOAD_GETFIELD_INT_ =  ASTORE ALOAD GETFIELD_INT 
-\ _PUTFIELD_INT_ALOAD_ALOAD_PUTFIELD_CELL_ALOAD_ =  PUTFIELD_INT ALOAD ALOAD PUTFIELD_CELL ALOAD 
-\ _GETFIELD_INT_IFLE_ =  GETFIELD_INT IFLE 
-\ _PUTFIELD_INT_ALOAD_DUP_GETFIELD_INT_ICONST_ =  PUTFIELD_INT ALOAD DUP GETFIELD_INT ICONST 
-\ _ALOAD_ALOAD_PUTFIELD_CELL_ALOAD_ICONST_ =  ALOAD ALOAD PUTFIELD_CELL ALOAD ICONST 
-\ _ALOAD_PUTFIELD_CELL_ALOAD_ICONST_ =  ALOAD PUTFIELD_CELL ALOAD ICONST 
-\ _LLOAD_LLOAD_ =  LLOAD LLOAD 
-\ _ALOAD_GETFIELD_INT_PUTFIELD_INT_ALOAD_ALOAD_ =  ALOAD GETFIELD_INT PUTFIELD_INT ALOAD ALOAD 
-\ _ALOAD_GETFIELD_INT_IFLE_ =  ALOAD GETFIELD_INT IFLE 
-\ _BASTORE_ALOAD_ =  BASTORE ALOAD 
-\ _ICONST_GETSTATIC_CELL_ =  ICONST GETSTATIC_CELL 
-\ _ILOAD_ICONST_IAND_IFEQ_ =  ILOAD ICONST IAND IFEQ 
-\ _PUTFIELD_INT_ALOAD_ACONST_PUTFIELD_CELL_ =  PUTFIELD_INT ALOAD ACONST PUTFIELD_CELL 
-\ _ALOAD_ALOAD_ICONST_ALOAD_ =  ALOAD ALOAD ICONST ALOAD 
-\ _DUP_X1_ICONST_IADD_PUTFIELD_INT_ALOAD_ =  DUP_X1 ICONST IADD PUTFIELD_INT ALOAD 
-\ _ICONST_ALOAD_ICONST_ALOAD_ =  ICONST ALOAD ICONST ALOAD 
-\ _ICONST_ISTORE_ICONST_ISTORE_GOTO_ =  ICONST ISTORE ICONST ISTORE GOTO 
-\ _ILOAD_IFGT_ =  ILOAD IFGT 
-\ _IAND_ICONST_ =  IAND ICONST 
-\ _ICONST_IF_ICMPGE_ =  ICONST IF_ICMPGE 
-\ _ILOAD_ILOAD_ICONST_ =  ILOAD ILOAD ICONST 
-\ _ACONST_PUTFIELD_CELL_ALOAD_ICONST_ =  ACONST PUTFIELD_CELL ALOAD ICONST 
-\ _ALOAD_ACONST_PUTFIELD_CELL_ALOAD_ICONST_ =  ALOAD ACONST PUTFIELD_CELL ALOAD ICONST 
-\ _ARRAYLENGTH_ALOAD_ =  ARRAYLENGTH ALOAD 
-\ _GETFIELD_CELL_INSTANCEOF_ =  GETFIELD_CELL INSTANCEOF 
-\ _ICONST_BALOAD_ICONST_ =  ICONST BALOAD ICONST 
-\ _ICONST_IAND_ICONST_ =  ICONST IAND ICONST 
-\ _ILOAD_AALOAD_ASTORE_ALOAD_ =  ILOAD AALOAD ASTORE ALOAD 
-\ _ILOAD_ALOAD_GETFIELD_INT_IADD_ =  ILOAD ALOAD GETFIELD_INT IADD 
-\ _ALOAD_GETFIELD_CELL_INSTANCEOF_ =  ALOAD GETFIELD_CELL INSTANCEOF 
-\ _ILOAD_AALOAD_ACONST_ =  ILOAD AALOAD ACONST 
-\ _ILOAD_ALOAD_GETFIELD_CELL_ILOAD_ =  ILOAD ALOAD GETFIELD_CELL ILOAD 
-\ _ACONST_PUTFIELD_CELL_ALOAD_ICONST_PUTFIELD_INT_ =  ACONST PUTFIELD_CELL ALOAD ICONST PUTFIELD_INT 
-\ _PUTFIELD_CELL_ICONST_ =  PUTFIELD_CELL ICONST 
-\ _GETFIELD_INT_ALOAD_GETFIELD_INT_IADD_ =  GETFIELD_INT ALOAD GETFIELD_INT IADD 
-\ _ILOAD_ILOAD_ALOAD_ =  ILOAD ILOAD ALOAD 
-\ _ALOAD_ICONST_BALOAD_ =  ALOAD ICONST BALOAD 
-\ _ALOAD_ILOAD_AALOAD_ACONST_ =  ALOAD ILOAD AALOAD ACONST 
-\ _ALOAD_ICONST_BALOAD_ICONST_ =  ALOAD ICONST BALOAD ICONST 
-\ _ASTORE_ALOAD_ALOAD_ALOAD_ =  ASTORE ALOAD ALOAD ALOAD 
-\ _GETFIELD_CELL_ARRAYLENGTH_ICONST_ =  GETFIELD_CELL ARRAYLENGTH ICONST 
-\ _ALOAD_GETFIELD_CELL_ARRAYLENGTH_ICONST_ =  ALOAD GETFIELD_CELL ARRAYLENGTH ICONST 
-\ _ALOAD_GETFIELD_CELL_GETFIELD_CELL_GETFIELD_CELL_ =  ALOAD GETFIELD_CELL GETFIELD_CELL GETFIELD_CELL 
-\ _GETFIELD_CELL_GETFIELD_CELL_GETFIELD_CELL_ =  GETFIELD_CELL GETFIELD_CELL GETFIELD_CELL 
-\ _ICONST_ISHL_IOR_ =  ICONST ISHL IOR 
-\ _ALOAD_ARRAYLENGTH_ILOAD_ =  ALOAD ARRAYLENGTH ILOAD 
-\ _ALOAD_CHECKCAST_ASTORE_ALOAD_ =  ALOAD CHECKCAST ASTORE ALOAD 
-\ _ALOAD_GETFIELD_INT_ICONST_IF_ICMPEQ_ =  ALOAD GETFIELD_INT ICONST IF_ICMPEQ 
-\ _ALOAD_GETFIELD_INT_IF_ICMPNE_ =  ALOAD GETFIELD_INT IF_ICMPNE 
-\ _ARRAYLENGTH_IF_ICMPNE_ =  ARRAYLENGTH IF_ICMPNE 
-\ _GETFIELD_CELL_ALOAD_ALOAD_ALOAD_ =  GETFIELD_CELL ALOAD ALOAD ALOAD 
-\ _ICONST_IADD_PUTFIELD_INT_ALOAD_GETFIELD_INT_ =  ICONST IADD PUTFIELD_INT ALOAD GETFIELD_INT 
-\ _ACONST_PUTFIELD_CELL_ALOAD_ALOAD_ =  ACONST PUTFIELD_CELL ALOAD ALOAD 
-\ _ALOAD_GETFIELD_CELL_ALOAD_ALOAD_ALOAD_ =  ALOAD GETFIELD_CELL ALOAD ALOAD ALOAD 
-\ _GETFIELD_CELL_ARRAYLENGTH_IF_ICMPNE_ =  GETFIELD_CELL ARRAYLENGTH IF_ICMPNE 
-\ _ICONST_BALOAD_ICONST_IAND_ =  ICONST BALOAD ICONST IAND 
-\ _ICONST_PUTFIELD_INT_ALOAD_ACONST_PUTFIELD_CELL_ =  ICONST PUTFIELD_INT ALOAD ACONST PUTFIELD_CELL 
-\ _ILOAD_ILOAD_IADD_ALOAD_ =  ILOAD ILOAD IADD ALOAD 
-\ _ALOAD_ALOAD_ALOAD_ACONST_ =  ALOAD ALOAD ALOAD ACONST 
-\ _ALOAD_PUTFIELD_CELL_ALOAD_ACONST_ =  ALOAD PUTFIELD_CELL ALOAD ACONST 
-\ _ASTORE_ALOAD_ILOAD_ =  ASTORE ALOAD ILOAD 
-\ _IADD_PUTFIELD_INT_ALOAD_GETFIELD_CELL_ =  IADD PUTFIELD_INT ALOAD GETFIELD_CELL 
-\ _ILOAD_ILOAD_IF_ICMPLE_ =  ILOAD ILOAD IF_ICMPLE 
-\ _ALOAD_ACONST_PUTFIELD_CELL_ALOAD_ALOAD_ =  ALOAD ACONST PUTFIELD_CELL ALOAD ALOAD 
-\ _ALOAD_GETFIELD_CELL_ALOAD_GETFIELD_INT_ILOAD_ =  ALOAD GETFIELD_CELL ALOAD GETFIELD_INT ILOAD 
-\ _GETFIELD_CELL_ALOAD_GETFIELD_CELL_GETFIELD_CELL_ =  GETFIELD_CELL ALOAD GETFIELD_CELL GETFIELD_CELL 
-\ _GETFIELD_CELL_ALOAD_GETFIELD_INT_ILOAD_ =  GETFIELD_CELL ALOAD GETFIELD_INT ILOAD 
-\ _MONITORENTER_ALOAD_ALOAD_ =  MONITORENTER ALOAD ALOAD 
-\ _AALOAD_ILOAD_ =  AALOAD ILOAD 
-\ _ALOAD_GETFIELD_INT_ICONST_ISUB_ =  ALOAD GETFIELD_INT ICONST ISUB 
-\ _CALOAD_ISTORE_ILOAD_ =  CALOAD ISTORE ILOAD 
-\ _ACONST_ICONST_ICONST_ =  ACONST ICONST ICONST 
-\ _ALOAD_GETFIELD_INT_ALOAD_GETFIELD_INT_IF_ICMPLT_ =  ALOAD GETFIELD_INT ALOAD GETFIELD_INT IF_ICMPLT 
-\ _GETFIELD_CELL_ILOAD_ILOAD_ =  GETFIELD_CELL ILOAD ILOAD 
-\ _GETFIELD_INT_ALOAD_GETFIELD_INT_IF_ICMPLT_ =  GETFIELD_INT ALOAD GETFIELD_INT IF_ICMPLT 
-\ _GETFIELD_INT_ICONST_ISUB_PUTFIELD_INT_ALOAD_ =  GETFIELD_INT ICONST ISUB PUTFIELD_INT ALOAD 
-\ _ICONST_IALOAD_ALOAD_ICONST_ =  ICONST IALOAD ALOAD ICONST 
-\ _ICONST_IALOAD_ALOAD_ICONST_IALOAD_ =  ICONST IALOAD ALOAD ICONST IALOAD 
-\ _ICONST_ISUB_ISTORE_GOTO_ =  ICONST ISUB ISTORE GOTO 
-\ _ILOAD_I2F_ =  ILOAD I2F 
-\ _PUTFIELD_INT_ALOAD_GETFIELD_CELL_ALOAD_ =  PUTFIELD_INT ALOAD GETFIELD_CELL ALOAD 
-\ _ALOAD_ALOAD_PUTFIELD_CELL_ALOAD_ACONST_ =  ALOAD ALOAD PUTFIELD_CELL ALOAD ACONST 
-\ _ALOAD_ICONST_BALOAD_ICONST_IAND_ =  ALOAD ICONST BALOAD ICONST IAND 
-\ _GETFIELD_INT_ALOAD_GETFIELD_CELL_GETFIELD_INT_ =  GETFIELD_INT ALOAD GETFIELD_CELL GETFIELD_INT 
-\ _GETFIELD_INT_IADD_ISTORE_ =  GETFIELD_INT IADD ISTORE 
-\ _ILOAD_ICONST_ILOAD_ =  ILOAD ICONST ILOAD 
-\ _ALOAD_GETFIELD_INT_ALOAD_GETFIELD_CELL_GETFIELD_INT_ =  ALOAD GETFIELD_INT ALOAD GETFIELD_CELL GETFIELD_INT 
-\ _DUP_ALOAD_ACONST_ =  DUP ALOAD ACONST 
-\ _ILOAD_ILOAD_IADD_ISTORE_ =  ILOAD ILOAD IADD ISTORE 
-\ _ILOAD_PUTFIELD_INT_ALOAD_ALOAD_PUTFIELD_CELL_ =  ILOAD PUTFIELD_INT ALOAD ALOAD PUTFIELD_CELL 
-\ _ALOAD_GETFIELD_INT_IADD_ISTORE_ =  ALOAD GETFIELD_INT IADD ISTORE 
-\ _ISTORE_ALOAD_GETFIELD_INT_ISTORE_ALOAD_ =  ISTORE ALOAD GETFIELD_INT ISTORE ALOAD 
-\ _ALOAD_ALOAD_ILOAD_AALOAD_ =  ALOAD ALOAD ILOAD AALOAD 
-\ _ALOAD_GETFIELD_CELL_ICONST_ALOAD_GETFIELD_INT_ =  ALOAD GETFIELD_CELL ICONST ALOAD GETFIELD_INT 
-\ _ALOAD_MONITORENTER_ALOAD_ALOAD_ =  ALOAD MONITORENTER ALOAD ALOAD 
-\ _GETFIELD_CELL_ICONST_ALOAD_GETFIELD_INT_ =  GETFIELD_CELL ICONST ALOAD GETFIELD_INT 
-\ _ALOAD_GETFIELD_CELL_ARRAYLENGTH_IF_ICMPNE_ =  ALOAD GETFIELD_CELL ARRAYLENGTH IF_ICMPNE 
-\ _ALOAD_ILOAD_ILOAD_ILOAD_ILOAD_ =  ALOAD ILOAD ILOAD ILOAD ILOAD 
-\ _FMUL_FADD_ =  FMUL FADD 
-\ _GETFIELD_INT_ISTORE_ALOAD_GETFIELD_INT_ISTORE_ =  GETFIELD_INT ISTORE ALOAD GETFIELD_INT ISTORE 
-\ _MONITORENTER_ALOAD_GETFIELD_CELL_ALOAD_ =  MONITORENTER ALOAD GETFIELD_CELL ALOAD 
-\ _IADD_ALOAD_GETFIELD_INT_ =  IADD ALOAD GETFIELD_INT 
-\ _ILOAD_FADD_ =  ILOAD FADD 
-\ _ILOAD_ISUB_ISTORE_ =  ILOAD ISUB ISTORE 
-\ _LSTORE_LLOAD_ =  LSTORE LLOAD 
-\ _GETSTATIC_CELL_ILOAD_ICONST_ =  GETSTATIC_CELL ILOAD ICONST 
-\ _ICONST_ALOAD_GETFIELD_INT_ALOAD_ =  ICONST ALOAD GETFIELD_INT ALOAD 
-\ _ICONST_IADD_PUTFIELD_INT_ALOAD_GETFIELD_CELL_ =  ICONST IADD PUTFIELD_INT ALOAD GETFIELD_CELL 
-\ _ILOAD_ILOAD_IF_ICMPGE_ =  ILOAD ILOAD IF_ICMPGE 
-\ _ALOAD_ALOAD_GETFIELD_INT_ALOAD_ =  ALOAD ALOAD GETFIELD_INT ALOAD 
-\ _FMUL_F2I_ =  FMUL F2I 
-\ _GETFIELD_CELL_ASTORE_ALOAD_GETFIELD_CELL_ =  GETFIELD_CELL ASTORE ALOAD GETFIELD_CELL 
-\ _ALOAD_GETFIELD_INT_ALOAD_GETFIELD_INT_IADD_ =  ALOAD GETFIELD_INT ALOAD GETFIELD_INT IADD 
-\ _ASTORE_ACONST_ASTORE_ALOAD_ =  ASTORE ACONST ASTORE ALOAD 
-\ _GETFIELD_INT_ISTORE_GOTO_ =  GETFIELD_INT ISTORE GOTO 
-\ _ICONST_ILOAD_IF_ICMPGT_ =  ICONST ILOAD IF_ICMPGT 
-\ _ICONST_ISTORE_ALOAD_ICONST_ =  ICONST ISTORE ALOAD ICONST 
-\ _IINC_CALOAD_ =  IINC CALOAD 
-\ _ILOAD_IINC_CALOAD_ =  ILOAD IINC CALOAD 
-\ _ISTORE_ALOAD_ACONST_ =  ISTORE ALOAD ACONST 
-\ _ALOAD_GETFIELD_INT_ILOAD_IADD_ =  ALOAD GETFIELD_INT ILOAD IADD 
-\ _FADD_ISTORE_ =  FADD ISTORE 
-\ _GETFIELD_CELL_GETFIELD_INT_PUTFIELD_INT_ =  GETFIELD_CELL GETFIELD_INT PUTFIELD_INT 
-\ _GETFIELD_INT_PUTFIELD_INT_ALOAD_ALOAD_GETFIELD_CELL_ =  GETFIELD_INT PUTFIELD_INT ALOAD ALOAD GETFIELD_CELL 
-\ _PUTFIELD_INT_ALOAD_ALOAD_GETFIELD_INT_PUTFIELD_INT_ =  PUTFIELD_INT ALOAD ALOAD GETFIELD_INT PUTFIELD_INT 
-\ _ASTORE_ALOAD_GETFIELD_CELL_ICONST_ =  ASTORE ALOAD GETFIELD_CELL ICONST 
-\ _ASTORE_ILOAD_IFEQ_ =  ASTORE ILOAD IFEQ 
-\ _CHECKCAST_ALOAD_ =  CHECKCAST ALOAD 
-\ _GETFIELD_CELL_PUTFIELD_CELL_ALOAD_ALOAD_ =  GETFIELD_CELL PUTFIELD_CELL ALOAD ALOAD 
-\ _ICONST_ISTORE_ILOAD_ =  ICONST ISTORE ILOAD 
-\ _ALOAD_GETFIELD_CELL_ILOAD_IINC_CALOAD_ =  ALOAD GETFIELD_CELL ILOAD IINC CALOAD 
-\ _GETFIELD_CELL_ALOAD_GETFIELD_CELL_ALOAD_GETFIELD_INT_ =  GETFIELD_CELL ALOAD GETFIELD_CELL ALOAD GETFIELD_INT 
-\ _GETFIELD_CELL_ILOAD_IINC_CALOAD_ =  GETFIELD_CELL ILOAD IINC CALOAD 
-\ _GETSTATIC_CELL_IF_ACMPNE_ =  GETSTATIC_CELL IF_ACMPNE 
-\ _ICONST_ALOAD_GETFIELD_CELL_IFNULL_ =  ICONST ALOAD GETFIELD_CELL IFNULL 
-\ _ILOAD_ILOAD_FADD_ =  ILOAD ILOAD FADD 
-\ _ISTORE_ICONST_ISTORE_ALOAD_ =  ISTORE ICONST ISTORE ALOAD 
-\ _PUTFIELD_LONG_ALOAD_ =  PUTFIELD_LONG ALOAD 
-\ _ILOAD_ICONST_BASTORE_ =  ILOAD ICONST BASTORE 
-\ _GETSTATIC_CELL_ALOAD_ALOAD_ =  GETSTATIC_CELL ALOAD ALOAD 
-\ _ILOAD_IF_ICMPEQ_ =  ILOAD IF_ICMPEQ 
-\ _ALOAD_ALOAD_GETFIELD_CELL_GETFIELD_INT_ =  ALOAD ALOAD GETFIELD_CELL GETFIELD_INT 
-\ _ALOAD_GETFIELD_CELL_ILOAD_ILOAD_ =  ALOAD GETFIELD_CELL ILOAD ILOAD 
-\ _GETFIELD_CELL_ICONST_ALOAD_ICONST_ =  GETFIELD_CELL ICONST ALOAD ICONST 
-\ _IADD_PUTFIELD_INT_ILOAD_ =  IADD PUTFIELD_INT ILOAD 
-\ _ICONST_ALOAD_ICONST_ALOAD_GETFIELD_INT_ =  ICONST ALOAD ICONST ALOAD GETFIELD_INT 
-\ _POP_IINC_ =  POP IINC 
-\ _ALOAD_GETFIELD_CELL_ICONST_ALOAD_ICONST_ =  ALOAD GETFIELD_CELL ICONST ALOAD ICONST 
-\ _ALOAD_GETFIELD_CELL_PUTFIELD_CELL_ALOAD_ALOAD_ =  ALOAD GETFIELD_CELL PUTFIELD_CELL ALOAD ALOAD 
-\ _ICONST_PUTFIELD_INT_ALOAD_GETFIELD_CELL_ =  ICONST PUTFIELD_INT ALOAD GETFIELD_CELL 
-\ _PUTFIELD_CELL_ICONST_ISTORE_ =  PUTFIELD_CELL ICONST ISTORE 
-\ _ALOAD_ACONST_ACONST_ACONST_ =  ALOAD ACONST ACONST ACONST 
-\ _ALOAD_ALOAD_ALOAD_ILOAD_ILOAD_ =  ALOAD ALOAD ALOAD ILOAD ILOAD 
-\ _GETFIELD_CELL_INSTANCEOF_IFEQ_ =  GETFIELD_CELL INSTANCEOF IFEQ 
-\ _GETFIELD_INT_ALOAD_GETFIELD_INT_IF_ICMPGE_ =  GETFIELD_INT ALOAD GETFIELD_INT IF_ICMPGE 
-\ _ISUB_ICONST_ =  ISUB ICONST 
-\ _PUTFIELD_CELL_ALOAD_GETFIELD_CELL_ILOAD_ =  PUTFIELD_CELL ALOAD GETFIELD_CELL ILOAD 
-\ _ALOAD_GETFIELD_CELL_INSTANCEOF_IFEQ_ =  ALOAD GETFIELD_CELL INSTANCEOF IFEQ 
-\ _ALOAD_GETFIELD_INT_ALOAD_GETFIELD_INT_IF_ICMPGE_ =  ALOAD GETFIELD_INT ALOAD GETFIELD_INT IF_ICMPGE 
-\ _ASTORE_GETSTATIC_CELL_ACONST_ =  ASTORE GETSTATIC_CELL ACONST 
-\ _GETFIELD_CELL_ICONST_ALOAD_ICONST_ALOAD_ =  GETFIELD_CELL ICONST ALOAD ICONST ALOAD 
-\ _GETSTATIC_CELL_ALOAD_GETFIELD_CELL_ =  GETSTATIC_CELL ALOAD GETFIELD_CELL 
-\ _ICONST_IADD_ISTORE_ =  ICONST IADD ISTORE 
-\ _ILOAD_ICONST_IF_ICMPGT_ =  ILOAD ICONST IF_ICMPGT 
-\ _ISUB_ILOAD_ =  ISUB ILOAD 
-\ _ALOAD_GETFIELD_INT_ISTORE_GOTO_ =  ALOAD GETFIELD_INT ISTORE GOTO 
-\ _GETFIELD_CELL_DUP_GETFIELD_INT_ =  GETFIELD_CELL DUP GETFIELD_INT 
-\ _GETSTATIC_INT_ICONST_IF_ICMPNE_ =  GETSTATIC_INT ICONST IF_ICMPNE 
-\ _ISTORE_IINC_ =  ISTORE IINC 
-\ _PUTSTATIC_CELL_ICONST_ACONST_ =  PUTSTATIC_CELL ICONST ACONST 
-\ _ALOAD_ALOAD_GETFIELD_CELL_ACONST_ =  ALOAD ALOAD GETFIELD_CELL ACONST 
-\ _GETFIELD_CELL_ALOAD_GETFIELD_INT_ALOAD_GETFIELD_INT_ =  GETFIELD_CELL ALOAD GETFIELD_INT ALOAD GETFIELD_INT 
-\ _GETFIELD_CELL_GETFIELD_INT_IF_ICMPEQ_ =  GETFIELD_CELL GETFIELD_INT IF_ICMPEQ 
-\ _GETFIELD_INT_ALOAD_GETFIELD_CELL_ARRAYLENGTH_IF_ICMPNE_ =  GETFIELD_INT ALOAD GETFIELD_CELL ARRAYLENGTH IF_ICMPNE 
-\ _ALOAD_ALOAD_GETFIELD_INT_ALOAD_GETFIELD_INT_ =  ALOAD ALOAD GETFIELD_INT ALOAD GETFIELD_INT 
-\ _ALOAD_GETFIELD_CELL_ICONST_IALOAD_ =  ALOAD GETFIELD_CELL ICONST IALOAD 
-\ _ASTORE_ALOAD_INSTANCEOF_ =  ASTORE ALOAD INSTANCEOF 
-\ _DUP_ALOAD_GETFIELD_INT_ =  DUP ALOAD GETFIELD_INT 
-\ _GETFIELD_CELL_ICONST_IALOAD_ =  GETFIELD_CELL ICONST IALOAD 
-\ _GETFIELD_CELL_ILOAD_AALOAD_ASTORE_GOTO_ =  GETFIELD_CELL ILOAD AALOAD ASTORE GOTO 
-\ _ISUB_ISTORE_ILOAD_ =  ISUB ISTORE ILOAD 
-\ _ALOAD_ALOAD_ILOAD_ICONST_ =  ALOAD ALOAD ILOAD ICONST 
-\ _ALOAD_ILOAD_AALOAD_ASTORE_ =  ALOAD ILOAD AALOAD ASTORE 
-\ _ISTORE_ILOAD_IFNE_ =  ISTORE ILOAD IFNE 
-\ _LLOAD_LCONST_LAND_ =  LLOAD LCONST LAND 
-\ _AALOAD_ICONST_ =  AALOAD ICONST 
-\ _CHECKNULL_MONITORENTER_ALOAD_GETFIELD_CELL_ALOAD_ =  CHECKNULL MONITORENTER ALOAD GETFIELD_CELL ALOAD 
-\ _ALOAD_GETFIELD_CELL_GETFIELD_INT_PUTFIELD_INT_ =  ALOAD GETFIELD_CELL GETFIELD_INT PUTFIELD_INT 
-\ _ARRAYLENGTH_ISTORE_ =  ARRAYLENGTH ISTORE 
-\ _DUP_ALOAD_GETFIELD_CELL_ALOAD_ =  DUP ALOAD GETFIELD_CELL ALOAD 
-\ _GETFIELD_INT_ICONST_IAND_ =  GETFIELD_INT ICONST IAND 
-\ _GETFIELD_INT_PUTFIELD_INT_ALOAD_ALOAD_GETFIELD_INT_ =  GETFIELD_INT PUTFIELD_INT ALOAD ALOAD GETFIELD_INT 
-\ _LLOAD_LCONST_LAND_LCONST_ =  LLOAD LCONST LAND LCONST 
-\ _ASTORE_ACONST_ASTORE_ACONST_ =  ASTORE ACONST ASTORE ACONST 
-\ _GETFIELD_CELL_ILOAD_ALOAD_GETFIELD_CELL_ =  GETFIELD_CELL ILOAD ALOAD GETFIELD_CELL 
-\ _GETFIELD_INT_LOOKUPSWITCH_ =  GETFIELD_INT LOOKUPSWITCH 
-\ _ICONST_IOR_ =  ICONST IOR 
-\ _ILOAD_I2L_ =  ILOAD I2L 
-\ _POP_ALOAD_ICONST_ =  POP ALOAD ICONST 
-\ _ALOAD_AASTORE_ALOAD_ =  ALOAD AASTORE ALOAD 
-\ _ALOAD_ALOAD_GETFIELD_CELL_GETFIELD_INT_PUTFIELD_INT_ =  ALOAD ALOAD GETFIELD_CELL GETFIELD_INT PUTFIELD_INT 
-\ _IINC_ICONST_ =  IINC ICONST 
-\ _ILOAD_IADD_ICONST_ =  ILOAD IADD ICONST 
-\ _CHECKCAST_PUTFIELD_CELL_ALOAD_ =  CHECKCAST PUTFIELD_CELL ALOAD 
-\ _GETFIELD_CELL_ILOAD_ICONST_BASTORE_ =  GETFIELD_CELL ILOAD ICONST BASTORE 
-\ _IADD_DUP_X1_ =  IADD DUP_X1 
-\ _IADD_DUP_X1_PUTFIELD_INT_ =  IADD DUP_X1 PUTFIELD_INT 
-\ _IAND_ALOAD_ =  IAND ALOAD 
-\ _ICONST_PUTSTATIC_INT_ =  ICONST PUTSTATIC_INT 
-\ _ILOAD_AALOAD_ILOAD_ =  ILOAD AALOAD ILOAD 
-\ _ACONST_ILOAD_ =  ACONST ILOAD 
-\ _ALOAD_GETFIELD_CELL_GETFIELD_INT_IFNE_ =  ALOAD GETFIELD_CELL GETFIELD_INT IFNE 
-\ _ALOAD_GETFIELD_INT_ICONST_IADD_ =  ALOAD GETFIELD_INT ICONST IADD 
-\ _GETFIELD_CELL_GETFIELD_INT_IFNE_ =  GETFIELD_CELL GETFIELD_INT IFNE 
-\ _GETFIELD_INT_ALOAD_GETFIELD_INT_IF_ICMPNE_ =  GETFIELD_INT ALOAD GETFIELD_INT IF_ICMPNE 
-\ _IALOAD_ISTORE_ =  IALOAD ISTORE 
-\ _ILOAD_FSUB_ =  ILOAD FSUB 
-\ _POP_ALOAD_GETFIELD_CELL_ALOAD_ =  POP ALOAD GETFIELD_CELL ALOAD 
-\ _AALOAD_PUTFIELD_CELL_ =  AALOAD PUTFIELD_CELL 
-\ _ALOAD_GETFIELD_CELL_ILOAD_ALOAD_GETFIELD_CELL_ =  ALOAD GETFIELD_CELL ILOAD ALOAD GETFIELD_CELL 
-\ _ALOAD_GETFIELD_CELL_ILOAD_ICONST_BASTORE_ =  ALOAD GETFIELD_CELL ILOAD ICONST BASTORE 
-\ _ALOAD_GETFIELD_INT_LOOKUPSWITCH_ =  ALOAD GETFIELD_INT LOOKUPSWITCH 
-\ _ALOAD_ICONST_LALOAD_ =  ALOAD ICONST LALOAD 
-\ _ASTORE_ALOAD_GETSTATIC_CELL_ =  ASTORE ALOAD GETSTATIC_CELL 
-\ _GETFIELD_INT_TABLESWITCH_ =  GETFIELD_INT TABLESWITCH 
-\ _GETSTATIC_CELL_DUP_ =  GETSTATIC_CELL DUP 
-\ _ICONST_LALOAD_ =  ICONST LALOAD 
-\ _ALOAD_ALOAD_ICONST_ALOAD_ARRAYLENGTH_ =  ALOAD ALOAD ICONST ALOAD ARRAYLENGTH 
-\ _GETFIELD_CELL_GETFIELD_CELL_ALOAD_GETFIELD_CELL_ =  GETFIELD_CELL GETFIELD_CELL ALOAD GETFIELD_CELL 
-\ _GETFIELD_CELL_ILOAD_AALOAD_ASTORE_ALOAD_ =  GETFIELD_CELL ILOAD AALOAD ASTORE ALOAD 
-\ _GETSTATIC_CELL_ILOAD_AALOAD_ =  GETSTATIC_CELL ILOAD AALOAD 
-\ _ICONST_ISTORE_ALOAD_GETFIELD_INT_ =  ICONST ISTORE ALOAD GETFIELD_INT 
-\ _ILOAD_ALOAD_ICONST_ =  ILOAD ALOAD ICONST 
-\ _ILOAD_INT2CHAR_ =  ILOAD INT2CHAR 
-\ _ILOAD_TABLESWITCH_ =  ILOAD TABLESWITCH 
-\ _PUTFIELD_CELL_ALOAD_GETFIELD_CELL_ALOAD_ =  PUTFIELD_CELL ALOAD GETFIELD_CELL ALOAD 
-\ _ACONST_ACONST_ACONST_ACONST_ =  ACONST ACONST ACONST ACONST 
-\ _ALOAD_ALOAD_GETFIELD_CELL_ICONST_ =  ALOAD ALOAD GETFIELD_CELL ICONST 
-\ _ALOAD_LCONST_ =  ALOAD LCONST 
-\ _ARRAYLENGTH_ICONST_ISUB_ =  ARRAYLENGTH ICONST ISUB 
-\ _BALOAD_ICONST_IAND_ICONST_ =  BALOAD ICONST IAND ICONST 
-\ _ILOAD_IADD_PUTFIELD_INT_ALOAD_ =  ILOAD IADD PUTFIELD_INT ALOAD 
-\ _ALOAD_ALOAD_ACONST_ALOAD_ =  ALOAD ALOAD ACONST ALOAD 
-\ _CALOAD_ICONST_ =  CALOAD ICONST 
-\ _ILOAD_ICONST_IF_ICMPGE_ =  ILOAD ICONST IF_ICMPGE 
-\ _ACONST_MONITOREXIT_ =  ACONST MONITOREXIT 
-\ _ALOAD_ARRAYLENGTH_IF_ICMPLE_ =  ALOAD ARRAYLENGTH IF_ICMPLE 
-\ _ALOAD_GETFIELD_CELL_GETFIELD_INT_IF_ICMPEQ_ =  ALOAD GETFIELD_CELL GETFIELD_INT IF_ICMPEQ 
-\ _ALOAD_GETFIELD_INT_ALOAD_GETFIELD_INT_IF_ICMPNE_ =  ALOAD GETFIELD_INT ALOAD GETFIELD_INT IF_ICMPNE 
-\ _ALOAD_ICONST_PUTFIELD_INT_ALOAD_GETFIELD_CELL_ =  ALOAD ICONST PUTFIELD_INT ALOAD GETFIELD_CELL 
-\ _GETFIELD_INT_ALOAD_GETFIELD_CELL_GETFIELD_INT_IF_ICMPEQ_ =  GETFIELD_INT ALOAD GETFIELD_CELL GETFIELD_INT IF_ICMPEQ 
-\ _GETFIELD_LONG_ALOAD_ =  GETFIELD_LONG ALOAD 
-\ _ICONST_AALOAD_ALOAD_ =  ICONST AALOAD ALOAD 
-\ _IOR_INT2SHORT_ =  IOR INT2SHORT 
-\ _LLOAD_LCONST_LAND_LCONST_IF_LCMPEQ_ =  LLOAD LCONST LAND LCONST IF_LCMPEQ 
-\ _PUTFIELD_CELL_ALOAD_GETFIELD_CELL_ILOAD_ALOAD_ =  PUTFIELD_CELL ALOAD GETFIELD_CELL ILOAD ALOAD 
-\ _AALOAD_PUTFIELD_CELL_ALOAD_ =  AALOAD PUTFIELD_CELL ALOAD 
-\ _ALOAD_ALOAD_GETFIELD_CELL_ALOAD_GETFIELD_CELL_ =  ALOAD ALOAD GETFIELD_CELL ALOAD GETFIELD_CELL 
-\ _ALOAD_ARRAYLENGTH_ICONST_ =  ALOAD ARRAYLENGTH ICONST 
-\ _ALOAD_DUP_GETFIELD_INT_ALOAD_ =  ALOAD DUP GETFIELD_INT ALOAD 
-\ _ALOAD_GETFIELD_LONG_ALOAD_ =  ALOAD GETFIELD_LONG ALOAD 
-\ _ALOAD_ILOAD_ALOAD_GETFIELD_CELL_ =  ALOAD ILOAD ALOAD GETFIELD_CELL 
-\ _ALOAD_ILOAD_ALOAD_ILOAD_ =  ALOAD ILOAD ALOAD ILOAD 
-\ _DUP_GETFIELD_INT_ALOAD_ =  DUP GETFIELD_INT ALOAD 
-\ _ICONST_ACONST_ICONST_ =  ICONST ACONST ICONST 
-\ _PUTFIELD_CELL_ICONST_ISTORE_GOTO_ =  PUTFIELD_CELL ICONST ISTORE GOTO 
-\ _AASTORE_ALOAD_ICONST_ =  AASTORE ALOAD ICONST 
-\ _ALOAD_ILOAD_ALOAD_ALOAD_ =  ALOAD ILOAD ALOAD ALOAD 
-\ _ALOAD_MONITOREXIT_ALOAD_ =  ALOAD MONITOREXIT ALOAD 
-\ _ASTORE_GETSTATIC_CELL_ACONST_ALOAD_ =  ASTORE GETSTATIC_CELL ACONST ALOAD 
-\ _CHECKCAST_GETFIELD_CELL_ =  CHECKCAST GETFIELD_CELL 
-\ _GETFIELD_CELL_ILOAD_CALOAD_ =  GETFIELD_CELL ILOAD CALOAD 
-\ _IADD_ISTORE_ALOAD_GETFIELD_INT_ =  IADD ISTORE ALOAD GETFIELD_INT 
-\ _MONITOREXIT_ALOAD_ =  MONITOREXIT ALOAD 
-\ _ASTORE_ALOAD_ALOAD_GETFIELD_CELL_ILOAD_ =  ASTORE ALOAD ALOAD GETFIELD_CELL ILOAD 
-\ _ISTORE_ICONST_ISTORE_ICONST_ =  ISTORE ICONST ISTORE ICONST 
-\ _PUTFIELD_CELL_ALOAD_ICONST_ACONST_ =  PUTFIELD_CELL ALOAD ICONST ACONST 
-\ _PUTFIELD_CELL_ALOAD_IFNULL_ =  PUTFIELD_CELL ALOAD IFNULL 
-\ _ALOAD_ILOAD_I2F_ =  ALOAD ILOAD I2F 
-\ _ALOAD_PUTFIELD_CELL_GOTO_ =  ALOAD PUTFIELD_CELL GOTO 
-\ _ARRAYLENGTH_ALOAD_GETFIELD_INT_ =  ARRAYLENGTH ALOAD GETFIELD_INT 
-\ _ASTORE_ALOAD_ALOAD_PUTFIELD_CELL_ =  ASTORE ALOAD ALOAD PUTFIELD_CELL 
-\ _DUP2_IALOAD_ =  DUP2 IALOAD 
-\ _DUP_ILOAD_ILOAD_ =  DUP ILOAD ILOAD 
-\ _GETFIELD_INT_ICONST_IADD_DUP_X1_ =  GETFIELD_INT ICONST IADD DUP_X1 
-\ _GETFIELD_INT_ICONST_IADD_DUP_X1_PUTFIELD_INT_ =  GETFIELD_INT ICONST IADD DUP_X1 PUTFIELD_INT 
-\ _IADD_PUTFIELD_INT_ALOAD_DUP_ =  IADD PUTFIELD_INT ALOAD DUP 
-\ _IADD_PUTFIELD_INT_ALOAD_DUP_GETFIELD_INT_ =  IADD PUTFIELD_INT ALOAD DUP GETFIELD_INT 
-\ _IAND_ICONST_ISHL_ =  IAND ICONST ISHL 
-\ _ICONST_IADD_DUP_X1_ =  ICONST IADD DUP_X1 
-\ _ICONST_IADD_DUP_X1_PUTFIELD_INT_ =  ICONST IADD DUP_X1 PUTFIELD_INT 
-\ _ICONST_IAND_ALOAD_ =  ICONST IAND ALOAD 
-\ _ICONST_IAND_ICONST_ISHL_ =  ICONST IAND ICONST ISHL 
-\ _ILOAD_AALOAD_PUTFIELD_CELL_ =  ILOAD AALOAD PUTFIELD_CELL 
-\ _LLOAD_ALOAD_ =  LLOAD ALOAD 
-\ _ALOAD_ICONST_IALOAD_ALOAD_ =  ALOAD ICONST IALOAD ALOAD 
-\ _ARRAYLENGTH_ACONST_ =  ARRAYLENGTH ACONST 
-\ _ASTORE_ALOAD_INSTANCEOF_IFEQ_ =  ASTORE ALOAD INSTANCEOF IFEQ 
-\ _DUP_GETFIELD_INT_ICONST_IADD_DUP_X1_ =  DUP GETFIELD_INT ICONST IADD DUP_X1 
-\ _FADD_ISTORE_ILOAD_ =  FADD ISTORE ILOAD 
-\ _GETFIELD_CELL_GETFIELD_CELL_ILOAD_ =  GETFIELD_CELL GETFIELD_CELL ILOAD 
-\ _IALOAD_ICONST_ =  IALOAD ICONST 
-\ _ICONST_ALOAD_ALOAD_ =  ICONST ALOAD ALOAD 
-\ _ILOAD_AALOAD_PUTFIELD_CELL_ALOAD_ =  ILOAD AALOAD PUTFIELD_CELL ALOAD 
-\ _ISTORE_ICONST_ILOAD_ =  ISTORE ICONST ILOAD 
-\ _ISUB_ALOAD_ =  ISUB ALOAD 
-\ _ALOAD_GETFIELD_INT_IFGE_ =  ALOAD GETFIELD_INT IFGE 
-\ _ALOAD_GETFIELD_INT_IF_ICMPEQ_ =  ALOAD GETFIELD_INT IF_ICMPEQ 
-\ _ALOAD_IF_ACMPNE_ =  ALOAD IF_ACMPNE 
-\ _F2I_PUTFIELD_INT_ =  F2I PUTFIELD_INT 
-\ _FMUL_F2I_PUTFIELD_INT_ =  FMUL F2I PUTFIELD_INT 
-\ _GETFIELD_CELL_GETFIELD_INT_PUTFIELD_INT_ALOAD_ =  GETFIELD_CELL GETFIELD_INT PUTFIELD_INT ALOAD 
-\ _GETFIELD_INT_IFGE_ =  GETFIELD_INT IFGE 
-\ _AALOAD_PUTFIELD_CELL_ALOAD_GETFIELD_CELL_ =  AALOAD PUTFIELD_CELL ALOAD GETFIELD_CELL 
-\ _ALOAD_ARRAYLENGTH_ALOAD_ =  ALOAD ARRAYLENGTH ALOAD 
-\ _ALOAD_GETFIELD_INT_ICONST_IAND_ =  ALOAD GETFIELD_INT ICONST IAND 
-\ _CALOAD_ILOAD_ =  CALOAD ILOAD 
-\ _DUP_ICONST_ICONST_ICONST_ =  DUP ICONST ICONST ICONST 
-\ _IADD_ISTORE_GOTO_ =  IADD ISTORE GOTO 
-\ _ILOAD_AALOAD_PUTFIELD_CELL_ALOAD_GETFIELD_CELL_ =  ILOAD AALOAD PUTFIELD_CELL ALOAD GETFIELD_CELL 
-\ _ILOAD_ALOAD_GETFIELD_INT_IF_ICMPLE_ =  ILOAD ALOAD GETFIELD_INT IF_ICMPLE 
-\ _ILOAD_ILOAD_ISUB_ISTORE_ =  ILOAD ILOAD ISUB ISTORE 
-\ _INT2BYTE_BASTORE_ =  INT2BYTE BASTORE 
-\ _AALOAD_PUTFIELD_CELL_ALOAD_GETFIELD_CELL_ILOAD_ =  AALOAD PUTFIELD_CELL ALOAD GETFIELD_CELL ILOAD 
-\ _ACONST_ASTORE_ALOAD_GETFIELD_CELL_ =  ACONST ASTORE ALOAD GETFIELD_CELL 
-\ _ALOAD_ALOAD_PUTFIELD_CELL_GOTO_ =  ALOAD ALOAD PUTFIELD_CELL GOTO 
-\ _ALOAD_GETFIELD_CELL_GETFIELD_INT_PUTFIELD_INT_ALOAD_ =  ALOAD GETFIELD_CELL GETFIELD_INT PUTFIELD_INT ALOAD 
-\ _ALOAD_GETFIELD_CELL_ILOAD_AALOAD_PUTFIELD_CELL_ =  ALOAD GETFIELD_CELL ILOAD AALOAD PUTFIELD_CELL 
-\ _ALOAD_ICONST_ALOAD_ICONST_ =  ALOAD ICONST ALOAD ICONST 
-\ _ALOAD_ICONST_LALOAD_LCONST_ =  ALOAD ICONST LALOAD LCONST 
-\ _ALOAD_MONITORENTER_ALOAD_GETFIELD_CELL_ =  ALOAD MONITORENTER ALOAD GETFIELD_CELL 
-\ _BALOAD_ICONST_IAND_ICONST_ISHL_ =  BALOAD ICONST IAND ICONST ISHL 
-\ _DUP_X1_PUTFIELD_CELL_ =  DUP_X1 PUTFIELD_CELL 
-\ _FMUL_ISTORE_ =  FMUL ISTORE 
-\ _GETFIELD_CELL_ILOAD_AALOAD_PUTFIELD_CELL_ =  GETFIELD_CELL ILOAD AALOAD PUTFIELD_CELL 
-\ _GETFIELD_CELL_ILOAD_AALOAD_PUTFIELD_CELL_ALOAD_ =  GETFIELD_CELL ILOAD AALOAD PUTFIELD_CELL ALOAD 
-\ _ICONST_ALOAD_GETFIELD_INT_ALOAD_GETFIELD_INT_ =  ICONST ALOAD GETFIELD_INT ALOAD GETFIELD_INT 
-\ _ICONST_ILOAD_ISUB_ =  ICONST ILOAD ISUB 
-\ _ICONST_LALOAD_LCONST_ =  ICONST LALOAD LCONST 
-\ _ILOAD_ALOAD_GETFIELD_CELL_ALOAD_ =  ILOAD ALOAD GETFIELD_CELL ALOAD 
-\ _ISTORE_ILOAD_IFEQ_ =  ISTORE ILOAD IFEQ 
-\ _ISUB_PUTFIELD_INT_ALOAD_GETFIELD_CELL_ =  ISUB PUTFIELD_INT ALOAD GETFIELD_CELL 
-\ _BALOAD_ICONST_IAND_ALOAD_ =  BALOAD ICONST IAND ALOAD 
-\ _GETFIELD_INT_IASTORE_ =  GETFIELD_INT IASTORE 
-\ _IADD_ALOAD_ARRAYLENGTH_ =  IADD ALOAD ARRAYLENGTH 
-\ _ILOAD_INT2BYTE_ =  ILOAD INT2BYTE 
-\ _ILOAD_ISTORE_GOTO_ =  ILOAD ISTORE GOTO 
-\ _ISTORE_ILOAD_ALOAD_GETFIELD_INT_ =  ISTORE ILOAD ALOAD GETFIELD_INT 
-\ _PUTFIELD_INT_ALOAD_ALOAD_ALOAD_ =  PUTFIELD_INT ALOAD ALOAD ALOAD 
+_ALOAD_GETFIELD_CELL_ =  ALOAD GETFIELD_CELL 
+_DUP_ICONST_ =  DUP ICONST 
+_ALOAD_ALOAD_ =  ALOAD ALOAD 
+_ICONST_ICONST_ =  ICONST ICONST 
+_DUP_ICONST_ICONST_ =  DUP ICONST ICONST 
+_ICONST_CASTORE_ =  ICONST CASTORE 
+_ICONST_ICONST_CASTORE_ =  ICONST ICONST CASTORE 
+_DUP_ICONST_ICONST_CASTORE_ =  DUP ICONST ICONST CASTORE 
+_CASTORE_DUP_ =  CASTORE DUP 
+_CASTORE_DUP_ICONST_ =  CASTORE DUP ICONST 
+_DUP_ICONST_ICONST_CASTORE_DUP_ =  DUP ICONST ICONST CASTORE DUP 
+_ICONST_CASTORE_DUP_ =  ICONST CASTORE DUP 
+_ICONST_CASTORE_DUP_ICONST_ =  ICONST CASTORE DUP ICONST 
+_ICONST_ICONST_CASTORE_DUP_ =  ICONST ICONST CASTORE DUP 
+_ICONST_ICONST_CASTORE_DUP_ICONST_ =  ICONST ICONST CASTORE DUP ICONST 
+_CASTORE_DUP_ICONST_ICONST_ =  CASTORE DUP ICONST ICONST 
+_CASTORE_DUP_ICONST_ICONST_CASTORE_ =  CASTORE DUP ICONST ICONST CASTORE 
+_ICONST_CASTORE_DUP_ICONST_ICONST_ =  ICONST CASTORE DUP ICONST ICONST 
+_ASTORE_ALOAD_ =  ASTORE ALOAD 
+_ALOAD_GETFIELD_INT_ =  ALOAD GETFIELD_INT 
+_ALOAD_ILOAD_ =  ALOAD ILOAD 
+_ALOAD_ACONST_ =  ALOAD ACONST 
+_ICONST_ACONST_ =  ICONST ACONST 
+_AASTORE_DUP_ =  AASTORE DUP 
+_AASTORE_DUP_ICONST_ =  AASTORE DUP ICONST 
+_ALOAD_ICONST_ =  ALOAD ICONST 
+_ILOAD_ICONST_ =  ILOAD ICONST 
+_ILOAD_ILOAD_ =  ILOAD ILOAD 
+_DUP_ICONST_ACONST_ =  DUP ICONST ACONST 
+_GETFIELD_CELL_ALOAD_ =  GETFIELD_CELL ALOAD 
+_AASTORE_DUP_ICONST_ACONST_ =  AASTORE DUP ICONST ACONST 
+_ACONST_AASTORE_ =  ACONST AASTORE 
+_ICONST_ACONST_AASTORE_ =  ICONST ACONST AASTORE 
+_DUP_ICONST_ACONST_AASTORE_ =  DUP ICONST ACONST AASTORE 
+_ALOAD_GETFIELD_CELL_ALOAD_ =  ALOAD GETFIELD_CELL ALOAD 
+_ACONST_AASTORE_DUP_ =  ACONST AASTORE DUP 
+_ACONST_AASTORE_DUP_ICONST_ =  ACONST AASTORE DUP ICONST 
+_DUP_ICONST_ACONST_AASTORE_DUP_ =  DUP ICONST ACONST AASTORE DUP 
+_ICONST_ACONST_AASTORE_DUP_ =  ICONST ACONST AASTORE DUP 
+_ICONST_ACONST_AASTORE_DUP_ICONST_ =  ICONST ACONST AASTORE DUP ICONST 
+_AASTORE_DUP_ICONST_ACONST_AASTORE_ =  AASTORE DUP ICONST ACONST AASTORE 
+_DUP_ACONST_ =  DUP ACONST 
+_ACONST_AASTORE_DUP_ICONST_ACONST_ =  ACONST AASTORE DUP ICONST ACONST 
+_PUTFIELD_CELL_ALOAD_ =  PUTFIELD_CELL ALOAD 
+_ILOAD_ALOAD_ =  ILOAD ALOAD 
+_ICONST_ALOAD_ =  ICONST ALOAD 
+_DUP_ALOAD_ =  DUP ALOAD 
+_ICONST_ISTORE_ =  ICONST ISTORE 
+_ASTORE_ALOAD_ALOAD_ =  ASTORE ALOAD ALOAD 
+_ALOAD_PUTFIELD_CELL_ =  ALOAD PUTFIELD_CELL 
+_PUTFIELD_INT_ALOAD_ =  PUTFIELD_INT ALOAD 
+_ALOAD_ALOAD_PUTFIELD_CELL_ =  ALOAD ALOAD PUTFIELD_CELL 
+_ICONST_IADD_ =  ICONST IADD 
+_ISTORE_GOTO_ =  ISTORE GOTO 
+_ACONST_ACONST_ =  ACONST ACONST 
+_POP_ALOAD_ =  POP ALOAD 
+_ACONST_ICONST_ =  ACONST ICONST 
+_ALOAD_ALOAD_ALOAD_ =  ALOAD ALOAD ALOAD 
+_ALOAD_ALOAD_GETFIELD_CELL_ =  ALOAD ALOAD GETFIELD_CELL 
+_ISTORE_ALOAD_ =  ISTORE ALOAD 
+_GETFIELD_CELL_ILOAD_ =  GETFIELD_CELL ILOAD 
+_IINC_ILOAD_ =  IINC ILOAD 
+_ISTORE_ILOAD_ =  ISTORE ILOAD 
+_ALOAD_GETFIELD_CELL_ILOAD_ =  ALOAD GETFIELD_CELL ILOAD 
+_ILOAD_ICONST_IADD_ =  ILOAD ICONST IADD 
+_CHECKCAST_ASTORE_ =  CHECKCAST ASTORE 
+_ASTORE_ACONST_ =  ASTORE ACONST 
+_GETFIELD_INT_ALOAD_ =  GETFIELD_INT ALOAD 
+_ACONST_ALOAD_ =  ACONST ALOAD 
+_ICONST_ISTORE_GOTO_ =  ICONST ISTORE GOTO 
+_CHECKCAST_ASTORE_ALOAD_ =  CHECKCAST ASTORE ALOAD 
+_ASTORE_GOTO_ =  ASTORE GOTO 
+_ALOAD_PUTFIELD_CELL_ALOAD_ =  ALOAD PUTFIELD_CELL ALOAD 
+_ALOAD_ALOAD_PUTFIELD_CELL_ALOAD_ =  ALOAD ALOAD PUTFIELD_CELL ALOAD 
+_ICONST_PUTFIELD_INT_ =  ICONST PUTFIELD_INT 
+_ALOAD_IFNULL_ =  ALOAD IFNULL 
+_ALOAD_IFNONNULL_ =  ALOAD IFNONNULL 
+_ALOAD_ICONST_PUTFIELD_INT_ =  ALOAD ICONST PUTFIELD_INT 
+_ALOAD_GETFIELD_INT_ALOAD_ =  ALOAD GETFIELD_INT ALOAD 
+_ALOAD_ILOAD_ILOAD_ =  ALOAD ILOAD ILOAD 
+_DUP_ICONST_ALOAD_ =  DUP ICONST ALOAD 
+_IADD_ILOAD_ =  IADD ILOAD 
+_GETFIELD_CELL_ICONST_ =  GETFIELD_CELL ICONST 
+_ILOAD_PUTFIELD_INT_ =  ILOAD PUTFIELD_INT 
+_GETFIELD_INT_ALOAD_GETFIELD_INT_ =  GETFIELD_INT ALOAD GETFIELD_INT 
+_GETFIELD_CELL_GETFIELD_CELL_ =  GETFIELD_CELL GETFIELD_CELL 
+_ALOAD_ACONST_ACONST_ =  ALOAD ACONST ACONST 
+_ALOAD_ARRAYLENGTH_ =  ALOAD ARRAYLENGTH 
+_GETFIELD_CELL_IFNULL_ =  GETFIELD_CELL IFNULL 
+_ICONST_ISUB_ =  ICONST ISUB 
+_ALOAD_ILOAD_PUTFIELD_INT_ =  ALOAD ILOAD PUTFIELD_INT 
+_ALOAD_GETFIELD_CELL_GETFIELD_CELL_ =  ALOAD GETFIELD_CELL GETFIELD_CELL 
+_PUTFIELD_CELL_ALOAD_ALOAD_ =  PUTFIELD_CELL ALOAD ALOAD 
+_ILOAD_AALOAD_ =  ILOAD AALOAD 
+_ALOAD_MONITOREXIT_ =  ALOAD MONITOREXIT 
+_ALOAD_CHECKCAST_ =  ALOAD CHECKCAST 
+_ALOAD_GETFIELD_CELL_ICONST_ =  ALOAD GETFIELD_CELL ICONST 
+_ICONST_ILOAD_ =  ICONST ILOAD 
+_ACONST_ICONST_ICONST_ =  ACONST ICONST ICONST 
+_ALOAD_GETFIELD_CELL_IFNULL_ =  ALOAD GETFIELD_CELL IFNULL