Lines Matching refs:workRegs
129 RegisterTable* regTable, RegType* workRegs, int insnIdx,
2100 static RegType adjustForRightShift(RegType* workRegs, const int insnRegCount,
2104 RegType srcType = getRegisterType(workRegs, insnRegCount, reg, pFailure);
2428 * Merge the registers from "workRegs" into "regTypes" at "nextInsn", and
2432 RegisterTable* regTable, int nextInsn, const RegType* workRegs)
2455 copyRegisters(targetRegs, workRegs, insnRegCount + kExtraRegs);
2461 //dumpRegTypes(meth, insnFlags, workRegs, 0, "work", NULL, 0);
2468 targetRegs[i] = mergeTypes(targetRegs[i], workRegs[i], &changed);
3237 RegType workRegs[meth->registersSize + kExtraRegs];
3302 copyRegisters(workRegs, insnRegs, meth->registersSize + kExtraRegs);
3305 dumpRegTypes(meth, insnFlags, workRegs, insnIdx, NULL,uninitMap,
3311 dumpRegTypes(meth, insnFlags, workRegs, insnIdx, NULL,uninitMap,
3322 compareRegisters(workRegs, insnRegs,
3326 LOG_VFY("HUH? workRegs diverged in %s.%s %s\n",
3329 dumpRegTypes(meth, insnFlags, workRegs, 0, "work",
3339 if (!verifyInstruction(meth, insnFlags, regTable, workRegs, insnIdx,
3468 RegisterTable* regTable, RegType* workRegs, int insnIdx,
3514 * than workRegs, because we don't want the result from the "successful"
3520 copyRegisters(entryRegs, workRegs, meth->registersSize + kExtraRegs);
3544 copyRegister1(workRegs, insnRegCount, decInsn.vA, decInsn.vB,
3550 copyRegister2(workRegs, insnRegCount, decInsn.vA, decInsn.vB, &failure);
3555 copyRegister1(workRegs, insnRegCount, decInsn.vA, decInsn.vB,
3571 copyResultRegister1(workRegs, insnRegCount, decInsn.vA,
3575 copyResultRegister2(workRegs, insnRegCount, decInsn.vA, &failure);
3578 copyResultRegister1(workRegs, insnRegCount, decInsn.vA,
3596 setRegisterType(workRegs, insnRegCount, decInsn.vA,
3602 if (!checkConstructorReturn(meth, workRegs, insnRegCount)) {
3610 if (!checkConstructorReturn(meth, workRegs, insnRegCount)) {
3620 returnType = getRegisterType(workRegs, insnRegCount, decInsn.vA,
3628 if (!checkConstructorReturn(meth, workRegs, insnRegCount)) {
3640 returnType = getRegisterType(workRegs, insnRegCount, decInsn.vA,
3642 returnTypeHi = getRegisterType(workRegs, insnRegCount,
3655 if (!checkConstructorReturn(meth, workRegs, insnRegCount)) {
3682 resClass = getClassFromRegister(workRegs, insnRegCount,
3704 setRegisterType(workRegs, insnRegCount, decInsn.vA,
3709 setRegisterType(workRegs, insnRegCount, decInsn.vA,
3717 setRegisterType(workRegs, insnRegCount, decInsn.vA,
3723 setRegisterType(workRegs, insnRegCount, decInsn.vA,
3737 setRegisterType(workRegs, insnRegCount, decInsn.vA,
3744 tmpType = getRegisterType(workRegs, insnRegCount, decInsn.vA, &failure);
3772 origType = getRegisterType(workRegs, insnRegCount, decInsn.vA,
3781 setRegisterType(workRegs, insnRegCount, decInsn.vA,
3787 tmpType = getRegisterType(workRegs, insnRegCount, decInsn.vB, &failure);
3806 setRegisterType(workRegs, insnRegCount, decInsn.vA,
3812 resClass = getClassFromRegister(workRegs, insnRegCount,
3821 setRegisterType(workRegs, insnRegCount, decInsn.vA, kRegTypeInteger,
3853 markUninitRefsAsInvalid(workRegs, insnRegCount, uninitMap,
3857 setRegisterType(workRegs, insnRegCount, decInsn.vA,
3874 verifyRegisterType(workRegs, insnRegCount, decInsn.vB,
3877 setRegisterType(workRegs
3897 verifyFilledNewArrayRegs(meth, workRegs, insnRegCount, &decInsn,
3900 setResultRegisterType(workRegs, insnRegCount,
3908 verifyRegisterType(workRegs, insnRegCount, decInsn.vB, kRegTypeFloat,
3910 verifyRegisterType(workRegs, insnRegCount, decInsn.vC, kRegTypeFloat,
3912 setRegisterType(workRegs, insnRegCount, decInsn.vA, kRegTypeBoolean,
3917 verifyRegisterType(workRegs, insnRegCount, decInsn.vB, kRegTypeDoubleLo,
3919 verifyRegisterType(workRegs, insnRegCount, decInsn.vC, kRegTypeDoubleLo,
3921 setRegisterType(workRegs, insnRegCount, decInsn.vA, kRegTypeBoolean,
3925 verifyRegisterType(workRegs, insnRegCount, decInsn.vB, kRegTypeLongLo,
3927 verifyRegisterType(workRegs, insnRegCount, decInsn.vC, kRegTypeLongLo,
3929 setRegisterType(workRegs, insnRegCount, decInsn.vA, kRegTypeBoolean,
3934 resClass = getClassFromRegister(workRegs, insnRegCount,
3954 verifyRegisterType(workRegs, insnRegCount, decInsn.vA,
3965 resClass = getClassFromRegister(workRegs, insnRegCount,
4039 type1 = getRegisterType(workRegs, insnRegCount, decInsn.vA,
4041 type2 = getRegisterType(workRegs, insnRegCount, decInsn.vB,
4063 tmpType = getRegisterType(workRegs, insnRegCount, decInsn.vA, &failure);
4071 tmpType = getRegisterType(workRegs, insnRegCount, decInsn.vB, &failure);
4082 tmpType = getRegisterType(workRegs, insnRegCount, decInsn.vA, &failure);
4095 tmpType = getRegisterType(workRegs, insnRegCount, decInsn.vA, &failure);
4122 indexType = getRegisterType(workRegs, insnRegCount, decInsn.vC,
4128 resClass = getClassFromRegister(workRegs, insnRegCount,
4156 setRegisterType(workRegs, insnRegCount, decInsn.vA,
4165 indexType = getRegisterType(workRegs, insnRegCount, decInsn.vC,
4171 resClass = getClassFromRegister(workRegs, insnRegCount,
4210 setRegisterType(workRegs, insnRegCount, decInsn.vA,
4219 indexType = getRegisterType(workRegs, insnRegCount, decInsn.vC,
4226 resClass = getClassFromRegister(workRegs, insnRegCount,
4271 setRegisterType(workRegs, insnRegCount, decInsn.vA,
4294 indexType = getRegisterType(workRegs, insnRegCount, decInsn.vC,
4301 srcType = getRegisterType(workRegs, insnRegCount, decInsn.vA,
4310 resClass = getClassFromRegister(workRegs, insnRegCount,
4341 tmpType = getRegisterType(workRegs, insnRegCount, decInsn.vC,
4347 tmpType = getRegisterType(workRegs, insnRegCount, decInsn.vA, &failure);
4350 getRegisterType(workRegs, insnRegCount, decInsn.vA+1, &failure);
4357 resClass = getClassFromRegister(workRegs, insnRegCount,
4386 tmpType = getRegisterType(workRegs, insnRegCount, decInsn.vC,
4393 resClass = getClassFromRegister(workRegs, insnRegCount,
4406 arrayClass = getClassFromRegister(workRegs, insnRegCount,
4467 objType = getRegisterType(workRegs, insnRegCount, decInsn.vB,
4488 setRegisterType(workRegs, insnRegCount, decInsn.vA, tmpType,
4499 objType = getRegisterType(workRegs, insnRegCount, decInsn.vB,
4524 setRegisterType(workRegs, insnRegCount, decInsn.vA,
4536 objType = getRegisterType(workRegs, insnRegCount, decInsn.vB,
4554 setRegisterType(workRegs, insnRegCount, decInsn.vA,
4580 srcType = getRegisterType(workRegs, insnRegCount, decInsn.vA,
4598 objType = getRegisterType(workRegs, insnRegCount, decInsn.vB,
4625 tmpType = getRegisterType(workRegs, insnRegCount, decInsn.vA, &failure);
4628 getRegisterType(workRegs, insnRegCount, decInsn.vA+1, &failure);
4636 objType = getRegisterType(workRegs, insnRegCount, decInsn.vB,
4671 objType = getRegisterType(workRegs, insnRegCount, decInsn.vB,
4691 valueType = getRegisterType(workRegs, insnRegCount, decInsn.vA,
4767 setRegisterType(workRegs, insnRegCount, decInsn.vA, tmpType,
4797 setRegisterType(workRegs, insnRegCount, decInsn.vA,
4823 setRegisterType(workRegs, insnRegCount, decInsn.vA,
4848 srcType = getRegisterType(workRegs, insnRegCount, decInsn.vA,
4892 tmpType = getRegisterType(workRegs, insnRegCount, decInsn.vA, &failure);
4895 getRegisterType(workRegs, insnRegCount, decInsn.vA+1, &failure);
4947 valueType = getRegisterType(workRegs, insnRegCount, decInsn.vA,
4996 calledMethod = verifyInvocationArgs(meth, workRegs, insnRegCount,
5002 setResultRegisterType(workRegs, insnRegCount, returnType, &failure);
5014 calledMethod = verifyInvocationArgs(meth, workRegs, insnRegCount,
5031 thisType = getInvocationThis(workRegs, insnRegCount,
5076 markRefsAsInitialized(workRegs, insnRegCount, uninitMap,
5082 setResultRegisterType(workRegs, insnRegCount,
5095 calledMethod = verifyInvocationArgs(meth, workRegs, insnRegCount,
5102 setResultRegisterType(workRegs, insnRegCount, returnType, &failure);
5114 absMethod = verifyInvocationArgs(meth, workRegs, insnRegCount,
5126 thisType = getInvocationThis(workRegs, insnRegCount,
5167 setResultRegisterType(workRegs, insnRegCount, returnType, &failure);
5174 checkUnop(workRegs, insnRegCount, &decInsn,
5179 checkUnop(workRegs, insnRegCount, &decInsn,
5183 checkUnop(workRegs, insnRegCount, &decInsn,
5187 checkUnop(workRegs, insnRegCount, &decInsn,
5191 checkUnop(workRegs, insnRegCount, &decInsn,
5195 checkUnop(workRegs, insnRegCount, &decInsn,
5199 checkUnop(workRegs, insnRegCount, &decInsn,
5203 checkUnop(workRegs, insnRegCount, &decInsn,
5207 checkUnop(workRegs, insnRegCount, &decInsn,
5211 checkUnop(workRegs, insnRegCount, &decInsn,
5215 checkUnop(workRegs, insnRegCount, &decInsn,
5219 checkUnop(workRegs, insnRegCount, &decInsn,
5223 checkUnop(workRegs, insnRegCount, &decInsn,
5227 checkUnop(workRegs, insnRegCount, &decInsn,
5231 checkUnop(workRegs, insnRegCount, &decInsn,
5235 checkUnop(workRegs, insnRegCount, &decInsn,
5239 checkUnop(workRegs, insnRegCount, &decInsn,
5243 checkUnop(workRegs, insnRegCount, &decInsn,
5247 checkUnop(workRegs, insnRegCount, &decInsn,
5259 checkBinop(workRegs, insnRegCount, &decInsn,
5265 checkBinop(workRegs, insnRegCount, &decInsn,
5276 checkBinop(workRegs, insnRegCount, &decInsn,
5283 checkBinop(workRegs, insnRegCount, &decInsn,
5291 checkBinop(workRegs, insnRegCount, &decInsn,
5299 checkBinop(workRegs, insnRegCount, &decInsn,
5310 checkBinop2addr(workRegs, insnRegCount, &decInsn,
5316 checkBinop2addr(workRegs, insnRegCount, &decInsn,
5320 checkBinop2addr(workRegs, insnRegCount, &decInsn,
5331 checkBinop2addr(workRegs, insnRegCount, &decInsn,
5337 checkBinop2addr(workRegs, insnRegCount, &decInsn,
5345 checkBinop2addr(workRegs, insnRegCount, &decInsn,
5353 checkBinop2addr(workRegs, insnRegCount, &decInsn,
5362 checkLitop(workRegs, insnRegCount, &decInsn,
5368 checkLitop(workRegs, insnRegCount, &decInsn,
5377 checkLitop(workRegs, insnRegCount, &decInsn,
5381 tmpType = adjustForRightShift(workRegs, insnRegCount,
5383 checkLitop(workRegs, insnRegCount, &decInsn,
5387 tmpType = adjustForRightShift(workRegs, insnRegCount,
5389 checkLitop(workRegs, insnRegCount, &decInsn,
5395 checkLitop(workRegs, insnRegCount, &decInsn,
5509 workRegs[reg] = workRegs[reg+1] = kRegTypeUnknown;
5537 workRegs);
5576 workRegs);
5614 updateRegisters(meth, insnFlags, regTable, absOffset, workRegs);
5636 /* note we use entryRegs, not workRegs */