Home | History | Annotate | Download | only in compiler

Lines Matching refs:ssaRep

937                      getSSAName(cUnit, mir->ssaRep->defs[0], operand0),
938 getSSAName(cUnit, mir->ssaRep->uses[0], operand1));
940 for (i = 1; i < mir->ssaRep->numUses; i++) {
942 getSSAName(cUnit, mir->ssaRep->uses[i], operand0));
962 getSSAName(cUnit, mir->ssaRep->uses[0], operand0));
967 getSSAName(cUnit, mir->ssaRep->uses[0], operand0),
968 getSSAName(cUnit, mir->ssaRep->uses[1], operand1));
988 getSSAName(cUnit, mir->ssaRep->uses[i], operand0));
992 if (mir->ssaRep->numDefs) {
994 for (udIdx = 0; udIdx < mir->ssaRep->numDefs; udIdx++) {
996 getSSAName(cUnit, mir->ssaRep->defs[udIdx], operand0));
1000 if (mir->ssaRep->numUses) {
1003 getSSAName(cUnit, mir->ssaRep->uses[0], operand0));
1004 for (udIdx = 1; udIdx < mir->ssaRep->numUses; udIdx++) {
1006 getSSAName(cUnit, mir->ssaRep->uses[udIdx], operand0));
1051 char *dvmCompilerGetSSAString(CompilationUnit *cUnit, SSARepresentation *ssaRep)
1058 for (i = 0; i < ssaRep->numDefs; i++) {
1059 int ssa2DalvikValue = dvmConvertSSARegToDalvik(cUnit, ssaRep->defs[i]);
1062 ssaRep->defs[i], DECODE_REG(ssa2DalvikValue),
1066 if (ssaRep->numDefs) {
1070 for (i = 0; i < ssaRep->numUses; i++) {
1071 int ssa2DalvikValue = dvmConvertSSARegToDalvik(cUnit, ssaRep->uses[i]);
1075 ssaRep->uses[i], DECODE_REG(ssa2DalvikValue),
1191 mir->ssaRep->numUses = numUses;
1192 mir->ssaRep->uses = (int *)dvmCompilerNew(sizeof(int) * numUses, false);
1195 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->arg[i], i);
1206 mir->ssaRep->numUses = numUses;
1207 mir->ssaRep->uses = (int *)dvmCompilerNew(sizeof(int) * numUses, false);
1210 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vC+i, i);
1222 mir->ssaRep = (struct SSARepresentation *)
1259 mir->ssaRep->numUses = numUses;
1260 mir->ssaRep->uses = (int *)dvmCompilerNew(sizeof(int) * numUses,
1262 mir->ssaRep->fpUse = (bool *)dvmCompilerNew(sizeof(bool) * numUses,
1276 mir->ssaRep->numDefs = numDefs;
1277 mir->ssaRep->defs = (int *)dvmCompilerNew(sizeof(int) * numDefs,
1279 mir->ssaRep->fpDef = (bool *)dvmCompilerNew(sizeof(bool) * numDefs,
1288 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_A;
1289 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vA, numUses++);
1291 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_A;
1292 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vA, numUses++);
1293 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_A;
1294 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vA+1, numUses++);
1297 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_B;
1298 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vB, numUses++);
1300 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_B;
1301 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vB, numUses++);
1302 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_B;
1303 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vB+1, numUses++);
1306 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_C;
1307 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vC, numUses++);
1309 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_C;
1310 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vC, numUses++);
1311 mir->ssaRep->fpUse[numUses] = dfAttributes & DF_FP_C;
1312 handleSSAUse(cUnit, mir->ssaRep->uses, dInsn->vC+1, numUses++);
1316 mir->ssaRep->fpDef[0] = dfAttributes & DF_FP_A;
1317 handleSSADef(cUnit, mir->ssaRep->defs, dInsn->vA, 0);
1319 mir->ssaRep->fpDef[1] = dfAttributes & DF_FP_A;
1320 handleSSADef(cUnit, mir->ssaRep->defs, dInsn->vA+1, 1);
1366 setConstant(cUnit, mir->ssaRep->defs[0], dInsn->vB);
1369 setConstant(cUnit, mir->ssaRep->defs[0],
1379 setConstant(cUnit, mir->ssaRep->defs[0], dInsn->vB);
1380 setConstant(cUnit, mir->ssaRep->defs[1], 0);
1383 setConstant(cUnit, mir->ssaRep->defs[0],
1385 setConstant(cUnit, mir->ssaRep->defs[1],
1389 setConstant(cUnit, mir->ssaRep->defs[0], 0);
1390 setConstant(cUnit, mir->ssaRep->defs[1],
1401 for (i = 0; i < mir->ssaRep->numUses; i++) {
1402 if (!dvmIsBitSet(isConstantV, mir->ssaRep->uses[i])) break;
1405 if (i == mir->ssaRep->numUses) {
1406 setConstant(cUnit, mir->ssaRep->defs[0],
1407 cUnit->constantValues[mir->ssaRep->uses[0]]);
1409 setConstant(cUnit, mir->ssaRep->defs[1],
1410 cUnit->constantValues[mir->ssaRep->uses[1]]);
1454 if (phi->ssaRep->defs[0] == mir->ssaRep->uses[0] &&
1455 phi->ssaRep->uses[1] == mir->ssaRep->defs[0]) {
1462 mir->ssaRep->uses[1])) {
1464 cUnit->constantValues[mir->ssaRep->uses[1]];
1470 mir->ssaRep->uses[1])) {
1472 -cUnit->constantValues[mir->ssaRep->uses[1]];
1484 dvmSetBit(isIndVarV, mir->ssaRep->uses[0]);
1489 ivInfo->ssaReg = mir->ssaRep->uses[0];
1490 ivInfo->basicSSAReg = mir->ssaRep->uses[0];
1510 if (dvmIsBitSet(isIndVarV, mir->ssaRep->defs[0])) continue;
1517 if (dvmIsBitSet(isIndVarV, mir->ssaRep->uses[0])) {
1519 mir->ssaRep->uses[0]);
1521 mir->ssaRep->defs[0]);
1529 mir->ssaRep->uses[1])) {
1530 c = cUnit->constantValues[mir->ssaRep->uses[1]];
1536 mir->ssaRep->uses[1])) {
1537 c = -cUnit->constantValues[mir->ssaRep->uses[1]];
1551 cUnit->loopAnalysis->ssaBIV = mir->ssaRep->defs[0];
1557 dvmSetBit(isIndVarV, mir->ssaRep->defs[0]);
1565 if (ivInfoOld->ssaReg == mir->ssaRep->uses[0]) break;
1571 ivInfo->ssaReg = mir->ssaRep->defs[0];