< prev index next >
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanWalker.java
Print this page
rev 52509 : [mq]: graal
@@ -449,18 +449,18 @@
int optimalSplitPos = allocator.getLastLirInstructionId(maxBlock) + 2;
if (optimalSplitPos > maxSplitPos) {
optimalSplitPos = allocator.getFirstLirInstructionId(maxBlock);
}
- // minimal block probability
- double minProbability = maxBlock.probability();
+ // minimal block frequency
+ double minFrequency = maxBlock.getRelativeFrequency();
for (int i = toBlockNr - 1; i >= fromBlockNr; i--) {
AbstractBlockBase<?> cur = blockAt(i);
- if (cur.probability() < minProbability) {
- // Block with lower probability found. Split at the end of this block.
- minProbability = cur.probability();
+ if (cur.getRelativeFrequency() < minFrequency) {
+ // Block with lower frequency found. Split at the end of this block.
+ minFrequency = cur.getRelativeFrequency();
optimalSplitPos = allocator.getLastLirInstructionId(cur) + 2;
}
}
assert optimalSplitPos > allocator.maxOpId() || allocator.isBlockBegin(optimalSplitPos) : "algorithm must move split pos to block boundary";
@@ -854,20 +854,20 @@
int optimalSplitPos = allocator.getLastLirInstructionId(maxBlock) - 2;
if (optimalSplitPos > maxSplitPos) {
optimalSplitPos = maxSplitPos;
}
- // minimal block probability
- double minProbability = maxBlock.probability();
+ // minimal block frequency
+ double minFrequency = maxBlock.getRelativeFrequency();
for (int i = toBlockNr - 1; i >= fromBlockNr; i--) {
AbstractBlockBase<?> cur = blockAt(i);
- if (cur.probability() < minProbability) {
- // Block with lower probability found. Split at the end of this block.
+ if (cur.getRelativeFrequency() < minFrequency) {
+ // Block with lower frequency found. Split at the end of this block.
int opIdBeforeBlockEnd = allocator.getLastLirInstructionId(cur) - 2;
if (allocator.getLIR().getLIRforBlock(cur).size() > 2) {
- minProbability = cur.probability();
+ minFrequency = cur.getRelativeFrequency();
optimalSplitPos = opIdBeforeBlockEnd;
} else {
/*
* Skip blocks with only LabelOp and BlockEndOp since they cause move ordering
* problems.
< prev index next >