Mercurial > hg > graal-compiler
comparison graal/GraalCompiler/src/com/sun/c1x/gen/LIRGenerator.java @ 2774:93fd92c9f8b0
Removed usage of stateAfter on BlockEnd instructions.
author | Thomas Wuerthinger <thomas@wuerthinger.net> |
---|---|
date | Tue, 24 May 2011 13:39:50 +0200 |
parents | 3e3338a1abb9 |
children | 3b73b230b86b |
comparison
equal
deleted
inserted
replaced
2773:27512ea6bbcb | 2774:93fd92c9f8b0 |
---|---|
1298 if (sux.numberOfPreds() > 1) { | 1298 if (sux.numberOfPreds() > 1) { |
1299 | 1299 |
1300 | 1300 |
1301 List<Phi> phis = getPhis(sux); | 1301 List<Phi> phis = getPhis(sux); |
1302 | 1302 |
1303 int predIndex = 0; | 1303 if (phis != null) { |
1304 for (; predIndex < sux.numberOfPreds(); ++predIndex) { | 1304 |
1305 if (sux.predAt(predIndex) == bb) { | 1305 int predIndex = 0; |
1306 break; | 1306 for (; predIndex < sux.numberOfPreds(); ++predIndex) { |
1307 if (sux.predAt(predIndex) == bb) { | |
1308 break; | |
1309 } | |
1307 } | 1310 } |
1308 } | 1311 assert predIndex < sux.numberOfPreds(); |
1309 assert predIndex < sux.numberOfPreds(); | 1312 |
1310 | |
1311 if (phis != null) { | |
1312 PhiResolver resolver = new PhiResolver(this); | 1313 PhiResolver resolver = new PhiResolver(this); |
1313 for (Phi phi : phis) { | 1314 for (Phi phi : phis) { |
1314 if (!phi.isDeadPhi() && phi.valueCount() > predIndex) { | 1315 if (!phi.isDeadPhi() && phi.valueCount() > predIndex) { |
1315 Value curVal = phi.valueAt(predIndex); | 1316 Value curVal = phi.valueAt(predIndex); |
1316 if (curVal != null && curVal != phi) { | 1317 if (curVal != null && curVal != phi) { |
1326 } | 1327 } |
1327 } | 1328 } |
1328 } | 1329 } |
1329 resolver.dispose(); | 1330 resolver.dispose(); |
1330 } | 1331 } |
1331 | |
1332 /* | |
1333 | |
1334 FrameState suxState = sux.stateBefore(); | |
1335 TTY.println("number of preds: " + sux.numberOfPreds()); | |
1336 | |
1337 PhiResolver resolver = new PhiResolver(this); | |
1338 | |
1339 | |
1340 for (int index = 0; index < suxState.stackSize(); index++) { | |
1341 moveToPhi(resolver, curState.stackAt(index), suxState.stackAt(index), phis, predIndex); | |
1342 } | |
1343 | |
1344 for (int index = 0; index < suxState.localsSize(); index++) { | |
1345 moveToPhi(resolver, curState.localAt(index), suxState.localAt(index), phis, predIndex); | |
1346 } | |
1347 resolver.dispose();*/ | |
1348 } | 1332 } |
1349 } | 1333 } |
1350 } | 1334 } |
1351 | 1335 |
1352 /** | 1336 /** |