1 HANDLE_OPCODE(OP_GOTO_32 /*+AAAAAAAA*/) 2 { 3 s4 offset = FETCH(1); /* low-order 16 bits */ 4 offset |= ((s4) FETCH(2)) << 16; /* high-order 16 bits */ 5 6 if (offset < 0) 7 ILOGV("|goto/32 -0x%08x", -offset); 8 else 9 ILOGV("|goto/32 +0x%08x", offset); 10 ILOGV("> branch taken"); 11 if (offset <= 0) /* allowed to branch to self */ 12 PERIODIC_CHECKS(kInterpEntryInstr, offset); 13 FINISH(offset); 14 } 15 OP_END 16