src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.loop/src/org/graalvm/compiler/loop/LoopFragmentInside.java
equal
deleted
inserted
replaced
231 opaque.setValue(graph.addOrUniqueWithInputs(AddNode.add(counterStride, previousValue, NodeView.DEFAULT))); |
231 opaque.setValue(graph.addOrUniqueWithInputs(AddNode.add(counterStride, previousValue, NodeView.DEFAULT))); |
232 GraphUtil.tryKillUnused(previousValue); |
232 GraphUtil.tryKillUnused(previousValue); |
233 } |
233 } |
234 } |
234 } |
235 mainLoopBegin.setUnrollFactor(mainLoopBegin.getUnrollFactor() * 2); |
235 mainLoopBegin.setUnrollFactor(mainLoopBegin.getUnrollFactor() * 2); |
236 mainLoopBegin.setLoopFrequency(mainLoopBegin.loopFrequency() / 2); |
236 mainLoopBegin.setLoopFrequency(Math.max(1.0, mainLoopBegin.loopFrequency() / 2)); |
237 graph.getDebug().dump(DebugContext.DETAILED_LEVEL, graph, "LoopPartialUnroll %s", loop); |
237 graph.getDebug().dump(DebugContext.DETAILED_LEVEL, graph, "LoopPartialUnroll %s", loop); |
238 |
238 |
239 mainLoopBegin.getDebug().dump(DebugContext.VERBOSE_LEVEL, mainLoopBegin.graph(), "After insertWithinAfter %s", mainLoopBegin); |
239 mainLoopBegin.getDebug().dump(DebugContext.VERBOSE_LEVEL, mainLoopBegin.graph(), "After insertWithinAfter %s", mainLoopBegin); |
240 } |
240 } |
241 |
241 |
436 // new corresponding phis |
436 // new corresponding phis |
437 for (PhiNode phi : newPhis) { |
437 for (PhiNode phi : newPhis) { |
438 for (int i = 0; i < phi.valueCount(); i++) { |
438 for (int i = 0; i < phi.valueCount(); i++) { |
439 ValueNode v = phi.valueAt(i); |
439 ValueNode v = phi.valueAt(i); |
440 if (loopBegin.isPhiAtMerge(v)) { |
440 if (loopBegin.isPhiAtMerge(v)) { |
441 PhiNode newV = peel.getDuplicatedNode((ValuePhiNode) v); |
441 PhiNode newV = peel.getDuplicatedNode((PhiNode) v); |
442 if (newV != null) { |
442 if (newV != null) { |
443 phi.setValueAt(i, newV); |
443 phi.setValueAt(i, newV); |
444 } |
444 } |
445 } |
445 } |
446 } |
446 } |