Mercurial > hg > graal-compiler
comparison graal/GraalCompiler/src/com/sun/c1x/ir/ComputeLinearScanOrder.java @ 2704:efbdb3ea95c9
Remove critical edge split identification.
author | Thomas Wuerthinger <thomas@wuerthinger.net> |
---|---|
date | Wed, 18 May 2011 17:27:06 +0200 |
parents | 42450f536d24 |
children | 4272b7af2d17 |
comparison
equal
deleted
inserted
replaced
2703:42450f536d24 | 2704:efbdb3ea95c9 |
---|---|
351 if (!cur.isLinearScanLoopEnd()) { | 351 if (!cur.isLinearScanLoopEnd()) { |
352 weight |= (1 << curBit); | 352 weight |= (1 << curBit); |
353 } | 353 } |
354 curBit--; | 354 curBit--; |
355 | 355 |
356 // critical edge split blocks are preferred because then they have a greater | |
357 // probability to be completely empty | |
358 if (cur.isCriticalEdgeSplit()) { | |
359 weight |= (1 << curBit); | |
360 } | |
361 curBit--; | |
362 | |
363 // exceptions should not be thrown in normal control flow, so these blocks | 356 // exceptions should not be thrown in normal control flow, so these blocks |
364 // are added as late as possible | 357 // are added as late as possible |
365 if (!(cur.end() instanceof Throw) && (singleSux == null || !(singleSux.end() instanceof Throw))) { | 358 if (!(cur.end() instanceof Throw) && (singleSux == null || !(singleSux.end() instanceof Throw))) { |
366 weight |= (1 << curBit); | 359 weight |= (1 << curBit); |
367 } | 360 } |
502 TTY.println("----- linear-scan block order:"); | 495 TTY.println("----- linear-scan block order:"); |
503 for (BlockBegin cur : linearScanOrder) { | 496 for (BlockBegin cur : linearScanOrder) { |
504 TTY.print(String.format("%4d: B%02d loop: %2d depth: %2d", cur.linearScanNumber(), cur.blockID, cur.loopIndex(), cur.loopDepth())); | 497 TTY.print(String.format("%4d: B%02d loop: %2d depth: %2d", cur.linearScanNumber(), cur.blockID, cur.loopIndex(), cur.loopDepth())); |
505 | 498 |
506 TTY.print(cur.isExceptionEntry() ? " ex" : " "); | 499 TTY.print(cur.isExceptionEntry() ? " ex" : " "); |
507 TTY.print(cur.isCriticalEdgeSplit() ? " ce" : " "); | |
508 TTY.print(cur.isLinearScanLoopHeader() ? " lh" : " "); | 500 TTY.print(cur.isLinearScanLoopHeader() ? " lh" : " "); |
509 TTY.print(cur.isLinearScanLoopEnd() ? " le" : " "); | 501 TTY.print(cur.isLinearScanLoopEnd() ? " le" : " "); |
510 | 502 |
511 if (cur.numberOfPreds() > 0) { | 503 if (cur.numberOfPreds() > 0) { |
512 TTY.print(" preds: "); | 504 TTY.print(" preds: "); |