Home | History | Annotate | Download | only in analysis

Lines Matching defs:insnIdx

129     RegisterTable* regTable, RegType* workRegs, int insnIdx,
1738 int insnIdx)
1740 return regTable->addrRegs[insnIdx];
2703 static bool checkMoveException(const Method* meth, int insnIdx,
2706 assert(insnIdx >= 0 && insnIdx < (int)dvmGetMethodInsnsSize(meth));
2708 if ((meth->insns[insnIdx] & 0xff) == OP_MOVE_EXCEPTION) {
2716 * For the "move-exception" instruction at "insnIdx", which must be at an
2726 static ClassObject* getCaughtExceptionType(const Method* meth, int insnIdx,
2760 if (handler->address == (u4) insnIdx) {
2793 "VFY: unable to find exception handler at addr 0x%x\n", insnIdx);
2969 int insnIdx, VerifyError failure)
2972 const u2* oldInsns = meth->insns + insnIdx;
2980 u2* newInsns = (u2*) meth->insns + insnIdx;
3050 int width = dvmInsnGetWidth(insnFlags, insnIdx);
3240 int insnIdx, startGuess;
3272 for (insnIdx = startGuess; insnIdx < insnsSize; insnIdx++) {
3273 if (dvmInsnIsChanged(insnFlags, insnIdx))
3277 if (insnIdx == insnsSize) {
3299 if (dvmInsnIsBranchTarget(insnFlags, insnIdx)) {
3300 RegType* insnRegs = getRegisterLine(regTable, insnIdx);
3305 dumpRegTypes(meth, insnFlags, workRegs, insnIdx, NULL,uninitMap,
3311 dumpRegTypes(meth, insnFlags, workRegs, insnIdx, NULL,uninitMap,
3320 RegType* insnRegs = getRegisterLine(regTable, insnIdx);
3338 // meth->clazz->descriptor, meth->name, meth->descriptor, insnIdx);
3339 if (!verifyInstruction(meth, insnFlags, regTable, workRegs, insnIdx,
3342 //LOGD("+++ %s bailing at %d\n", meth->name, insnIdx);
3350 OpCode opCode = *(meth->insns + insnIdx) & 0xff;
3386 dvmInsnSetVisited(insnFlags, insnIdx, true);
3387 dvmInsnSetChanged(insnFlags, insnIdx, false);
3400 for (insnIdx = 0; insnIdx < insnsSize;
3401 insnIdx += dvmInsnGetWidth(insnFlags, insnIdx))
3407 int instr = meth->insns[insnIdx];
3412 (meth->insns[insnIdx+1] == kPackedSwitchSignature ||
3413 meth->insns[insnIdx+1] == kSparseSwitchSignature ||
3414 meth->insns[insnIdx+1] == kArrayDataSignature)))
3416 dvmInsnSetVisited(insnFlags, insnIdx, true);
3419 if (!dvmInsnIsVisited(insnFlags, insnIdx)) {
3421 deadStart = insnIdx;
3427 deadStart, insnIdx-1,
3439 deadStart, insnIdx-1,
3468 RegisterTable* regTable, RegType* workRegs, int insnIdx,
3472 const u2* insns = meth->insns + insnIdx;
3518 if ((nextFlags & kInstrCanThrow) != 0 && dvmInsnIsInTry(insnFlags, insnIdx))
3592 resClass = getCaughtExceptionType(meth, insnIdx, &failure);
3845 int uidx = dvmSetUninitInstance(uninitMap, insnIdx, resClass);
5481 decInsn.opCode, insnIdx);
5486 decInsn.opCode, insnIdx);
5487 if (!replaceFailingInstruction(meth, insnFlags, insnIdx, failure)) {
5489 decInsn.opCode, insnIdx);
5493 insns = meth->insns + insnIdx;
5516 int insnWidth = dvmInsnGetWidth(insnFlags, insnIdx);
5517 if (insnIdx+insnWidth >= insnsSize) {
5520 insnIdx);
5528 if (!checkMoveException(meth, insnIdx+insnWidth, "next"))
5531 if (getRegisterLine(regTable, insnIdx+insnWidth) != NULL) {
5536 updateRegisters(meth, insnFlags, regTable, insnIdx+insnWidth,
5544 dvmInsnSetChanged(insnFlags, insnIdx+insnWidth, true);
5561 if (!dvmGetBranchTarget(meth, insnFlags, insnIdx, &branchTarget,
5565 LOG_VFY_METH(meth, "VFY: bad branch at %d\n", insnIdx);
5571 if (!checkMoveException(meth, insnIdx+branchTarget, "branch"))
5575 updateRegisters(meth, insnFlags, regTable, insnIdx+branchTarget,
5607 absOffset = insnIdx + offset;
5623 if ((nextFlags & kInstrCanThrow) != 0 && dvmInsnIsInTry(insnFlags, insnIdx))
5628 if (dexFindCatchHandler(&iterator, pCode, insnIdx)) {
5650 *pStartGuess = insnIdx + dvmInsnGetWidth(insnFlags, insnIdx);
5653 *pStartGuess = insnIdx + branchTarget;