• Home
  • Raw
  • Download

Lines Matching refs:mir

922                                   const MIR *mir)  in dvmCompilerFullDisassembler()  argument
926 const DecodedInstruction *insn = &mir->dalvikInsn; in dvmCompilerFullDisassembler()
937 getSSAName(cUnit, mir->ssaRep->defs[0], operand0), in dvmCompilerFullDisassembler()
938 getSSAName(cUnit, mir->ssaRep->uses[0], operand1)); in dvmCompilerFullDisassembler()
940 for (i = 1; i < mir->ssaRep->numUses; i++) { in dvmCompilerFullDisassembler()
942 getSSAName(cUnit, mir->ssaRep->uses[i], operand0)); in dvmCompilerFullDisassembler()
962 getSSAName(cUnit, mir->ssaRep->uses[0], operand0)); in dvmCompilerFullDisassembler()
967 getSSAName(cUnit, mir->ssaRep->uses[0], operand0), in dvmCompilerFullDisassembler()
968 getSSAName(cUnit, mir->ssaRep->uses[1], operand1)); in dvmCompilerFullDisassembler()
982 mir->offset + delta); in dvmCompilerFullDisassembler()
988 getSSAName(cUnit, mir->ssaRep->uses[i], operand0)); in dvmCompilerFullDisassembler()
992 if (mir->ssaRep->numDefs) { in dvmCompilerFullDisassembler()
994 for (udIdx = 0; udIdx < mir->ssaRep->numDefs; udIdx++) { in dvmCompilerFullDisassembler()
996 getSSAName(cUnit, mir->ssaRep->defs[udIdx], operand0)); in dvmCompilerFullDisassembler()
1000 if (mir->ssaRep->numUses) { in dvmCompilerFullDisassembler()
1003 getSSAName(cUnit, mir->ssaRep->uses[0], operand0)); in dvmCompilerFullDisassembler()
1004 for (udIdx = 1; udIdx < mir->ssaRep->numUses; udIdx++) { in dvmCompilerFullDisassembler()
1006 getSSAName(cUnit, mir->ssaRep->uses[udIdx], operand0)); in dvmCompilerFullDisassembler()
1110 MIR *mir; in dvmCompilerFindLocalLiveIn() local
1122 for (mir = bb->firstMIRInsn; mir; mir = mir->next) { in dvmCompilerFindLocalLiveIn()
1124 dvmCompilerDataFlowAttributes[mir->dalvikInsn.opcode]; in dvmCompilerFindLocalLiveIn()
1125 DecodedInstruction *dInsn = &mir->dalvikInsn; in dvmCompilerFindLocalLiveIn()
1185 static void dataFlowSSAFormat35C(CompilationUnit *cUnit, MIR *mir) in dataFlowSSAFormat35C() argument
1187 DecodedInstruction *dInsn = &mir->dalvikInsn; in dataFlowSSAFormat35C()
1191 mir->ssaRep->numUses = numUses; in dataFlowSSAFormat35C()
1192 mir->ssaRep->uses = (int *)dvmCompilerNew(sizeof(int) * numUses, false); in dataFlowSSAFormat35C()
1195 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->arg[i], i); in dataFlowSSAFormat35C()
1200 static void dataFlowSSAFormat3RC(CompilationUnit *cUnit, MIR *mir) in dataFlowSSAFormat3RC() argument
1202 DecodedInstruction *dInsn = &mir->dalvikInsn; in dataFlowSSAFormat3RC()
1206 mir->ssaRep->numUses = numUses; in dataFlowSSAFormat3RC()
1207 mir->ssaRep->uses = (int *)dvmCompilerNew(sizeof(int) * numUses, false); in dataFlowSSAFormat3RC()
1210 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vC+i, i); in dataFlowSSAFormat3RC()
1217 MIR *mir; in dvmCompilerDoSSAConversion() local
1221 for (mir = bb->firstMIRInsn; mir; mir = mir->next) { in dvmCompilerDoSSAConversion()
1222 mir->ssaRep = (struct SSARepresentation *) in dvmCompilerDoSSAConversion()
1226 dvmCompilerDataFlowAttributes[mir->dalvikInsn.opcode]; in dvmCompilerDoSSAConversion()
1231 dataFlowSSAFormat35C(cUnit, mir); in dvmCompilerDoSSAConversion()
1236 dataFlowSSAFormat3RC(cUnit, mir); in dvmCompilerDoSSAConversion()
1259 mir->ssaRep->numUses = numUses; in dvmCompilerDoSSAConversion()
1260 mir->ssaRep->uses = (int *)dvmCompilerNew(sizeof(int) * numUses, in dvmCompilerDoSSAConversion()
1262 mir->ssaRep->fpUse = (bool *)dvmCompilerNew(sizeof(bool) * numUses, in dvmCompilerDoSSAConversion()
1276 mir->ssaRep->numDefs = numDefs; in dvmCompilerDoSSAConversion()
1277 mir->ssaRep->defs = (int *)dvmCompilerNew(sizeof(int) * numDefs, in dvmCompilerDoSSAConversion()
1279 mir->ssaRep->fpDef = (bool *)dvmCompilerNew(sizeof(bool) * numDefs, in dvmCompilerDoSSAConversion()
1283 DecodedInstruction *dInsn = &mir->dalvikInsn; in dvmCompilerDoSSAConversion()
1288 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_A; in dvmCompilerDoSSAConversion()
1289 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vA, numUses++); in dvmCompilerDoSSAConversion()
1291 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_A; in dvmCompilerDoSSAConversion()
1292 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vA, numUses++); in dvmCompilerDoSSAConversion()
1293 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_A; in dvmCompilerDoSSAConversion()
1294 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vA+1, numUses++); in dvmCompilerDoSSAConversion()
1297 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_B; in dvmCompilerDoSSAConversion()
1298 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vB, numUses++); in dvmCompilerDoSSAConversion()
1300 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_B; in dvmCompilerDoSSAConversion()
1301 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vB, numUses++); in dvmCompilerDoSSAConversion()
1302 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_B; in dvmCompilerDoSSAConversion()
1303 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vB+1, numUses++); in dvmCompilerDoSSAConversion()
1306 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_C; in dvmCompilerDoSSAConversion()
1307 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vC, numUses++); in dvmCompilerDoSSAConversion()
1309 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_C; in dvmCompilerDoSSAConversion()
1310 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vC, numUses++); in dvmCompilerDoSSAConversion()
1311 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_C; in dvmCompilerDoSSAConversion()
1312 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vC+1, numUses++); in dvmCompilerDoSSAConversion()
1316 mir->ssaRep->fpDef[0] = dfAttributes & DF_FP_A; in dvmCompilerDoSSAConversion()
1317 handleSSADef(cUnit, mir->ssaRep->defs, dInsn->vA, 0); in dvmCompilerDoSSAConversion()
1319 mir->ssaRep->fpDef[1] = dfAttributes & DF_FP_A; in dvmCompilerDoSSAConversion()
1320 handleSSADef(cUnit, mir->ssaRep->defs, dInsn->vA+1, 1); in dvmCompilerDoSSAConversion()
1348 MIR *mir; in dvmCompilerDoConstantPropagation() local
1351 for (mir = bb->firstMIRInsn; mir; mir = mir->next) { in dvmCompilerDoConstantPropagation()
1353 dvmCompilerDataFlowAttributes[mir->dalvikInsn.opcode]; in dvmCompilerDoConstantPropagation()
1355 DecodedInstruction *dInsn = &mir->dalvikInsn; in dvmCompilerDoConstantPropagation()
1366 setConstant(cUnit, mir->ssaRep->defs[0], dInsn->vB); in dvmCompilerDoConstantPropagation()
1369 setConstant(cUnit, mir->ssaRep->defs[0], in dvmCompilerDoConstantPropagation()
1379 setConstant(cUnit, mir->ssaRep->defs[0], dInsn->vB); in dvmCompilerDoConstantPropagation()
1380 setConstant(cUnit, mir->ssaRep->defs[1], 0); in dvmCompilerDoConstantPropagation()
1383 setConstant(cUnit, mir->ssaRep->defs[0], in dvmCompilerDoConstantPropagation()
1385 setConstant(cUnit, mir->ssaRep->defs[1], in dvmCompilerDoConstantPropagation()
1389 setConstant(cUnit, mir->ssaRep->defs[0], 0); in dvmCompilerDoConstantPropagation()
1390 setConstant(cUnit, mir->ssaRep->defs[1], in dvmCompilerDoConstantPropagation()
1401 for (i = 0; i < mir->ssaRep->numUses; i++) { in dvmCompilerDoConstantPropagation()
1402 if (!dvmIsBitSet(isConstantV, mir->ssaRep->uses[i])) break; in dvmCompilerDoConstantPropagation()
1405 if (i == mir->ssaRep->numUses) { in dvmCompilerDoConstantPropagation()
1406 setConstant(cUnit, mir->ssaRep->defs[0], in dvmCompilerDoConstantPropagation()
1407 cUnit->constantValues[mir->ssaRep->uses[0]]); in dvmCompilerDoConstantPropagation()
1409 setConstant(cUnit, mir->ssaRep->defs[1], in dvmCompilerDoConstantPropagation()
1410 cUnit->constantValues[mir->ssaRep->uses[1]]); in dvmCompilerDoConstantPropagation()
1425 MIR *mir; in dvmCompilerFindInductionVariables() local
1438 for (mir = bb->firstMIRInsn; mir; mir = mir->next) { in dvmCompilerFindInductionVariables()
1440 dvmCompilerDataFlowAttributes[mir->dalvikInsn.opcode]; in dvmCompilerFindInductionVariables()
1454 if (phi->ssaRep->defs[0] == mir->ssaRep->uses[0] && in dvmCompilerFindInductionVariables()
1455 phi->ssaRep->uses[1] == mir->ssaRep->defs[0]) { in dvmCompilerFindInductionVariables()
1459 switch (mir->dalvikInsn.opcode) { in dvmCompilerFindInductionVariables()
1462 mir->ssaRep->uses[1])) { in dvmCompilerFindInductionVariables()
1464 cUnit->constantValues[mir->ssaRep->uses[1]]; in dvmCompilerFindInductionVariables()
1470 mir->ssaRep->uses[1])) { in dvmCompilerFindInductionVariables()
1472 -cUnit->constantValues[mir->ssaRep->uses[1]]; in dvmCompilerFindInductionVariables()
1477 deltaValue = mir->dalvikInsn.vC; in dvmCompilerFindInductionVariables()
1484 dvmSetBit(isIndVarV, mir->ssaRep->uses[0]); in dvmCompilerFindInductionVariables()
1489 ivInfo->ssaReg = mir->ssaRep->uses[0]; in dvmCompilerFindInductionVariables()
1490 ivInfo->basicSSAReg = mir->ssaRep->uses[0]; in dvmCompilerFindInductionVariables()
1503 for (mir = bb->firstMIRInsn; mir; mir = mir->next) { in dvmCompilerFindInductionVariables()
1505 dvmCompilerDataFlowAttributes[mir->dalvikInsn.opcode]; in dvmCompilerFindInductionVariables()
1510 if (dvmIsBitSet(isIndVarV, mir->ssaRep->defs[0])) continue; in dvmCompilerFindInductionVariables()
1517 if (dvmIsBitSet(isIndVarV, mir->ssaRep->uses[0])) { in dvmCompilerFindInductionVariables()
1519 mir->ssaRep->uses[0]); in dvmCompilerFindInductionVariables()
1521 mir->ssaRep->defs[0]); in dvmCompilerFindInductionVariables()
1526 switch (mir->dalvikInsn.opcode) { in dvmCompilerFindInductionVariables()
1529 mir->ssaRep->uses[1])) { in dvmCompilerFindInductionVariables()
1530 c = cUnit->constantValues[mir->ssaRep->uses[1]]; in dvmCompilerFindInductionVariables()
1536 mir->ssaRep->uses[1])) { in dvmCompilerFindInductionVariables()
1537 c = -cUnit->constantValues[mir->ssaRep->uses[1]]; in dvmCompilerFindInductionVariables()
1542 c = mir->dalvikInsn.vC; in dvmCompilerFindInductionVariables()
1551 cUnit->loopAnalysis->ssaBIV = mir->ssaRep->defs[0]; in dvmCompilerFindInductionVariables()
1557 dvmSetBit(isIndVarV, mir->ssaRep->defs[0]); in dvmCompilerFindInductionVariables()
1565 if (ivInfoOld->ssaReg == mir->ssaRep->uses[0]) break; in dvmCompilerFindInductionVariables()
1571 ivInfo->ssaReg = mir->ssaRep->defs[0]; in dvmCompilerFindInductionVariables()