src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/SimplifyingGraphDecoder.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/SimplifyingGraphDecoder.java	Mon Mar 20 17:40:31 2017
--- new/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/SimplifyingGraphDecoder.java	Mon Mar 20 17:40:31 2017

*** 37,46 **** --- 37,47 ---- import org.graalvm.compiler.nodes.calc.FloatingNode; import org.graalvm.compiler.nodes.extended.GuardingNode; import org.graalvm.compiler.nodes.extended.IntegerSwitchNode; import org.graalvm.compiler.nodes.spi.StampProvider; import org.graalvm.compiler.nodes.util.GraphUtil; + import org.graalvm.compiler.options.OptionValues; import jdk.vm.ci.code.Architecture; import jdk.vm.ci.meta.Assumptions; import jdk.vm.ci.meta.ConstantReflectionProvider; import jdk.vm.ci.meta.MetaAccessProvider;
*** 60,72 **** --- 61,80 ---- protected final boolean canonicalizeReads; protected class PECanonicalizerTool implements CanonicalizerTool { private final Assumptions assumptions; + private final OptionValues options; ! public PECanonicalizerTool(Assumptions assumptions, OptionValues options) { this.assumptions = assumptions; + this.options = options; + } + + @Override + public OptionValues getOptions() { + return options; } @Override public MetaAccessProvider getMetaAccess() { return metaAccess;
*** 230,240 **** --- 238,248 ---- } handleCanonicalization(methodScope, loopScope, nodeOrderId, node, canonical); } } else if (node instanceof Canonicalizable) { ! Node canonical = ((Canonicalizable) node).canonical(new PECanonicalizerTool(methodScope.graph.getAssumptions(), methodScope.graph.getOptions())); if (canonical != node) { handleCanonicalization(methodScope, loopScope, nodeOrderId, node, canonical); } } }
*** 281,291 **** --- 289,299 ---- protected Node handleFloatingNodeBeforeAdd(MethodScope methodScope, LoopScope loopScope, Node node) { if (node instanceof ValueNode) { ((ValueNode) node).inferStamp(); } if (node instanceof Canonicalizable) { ! Node canonical = ((Canonicalizable) node).canonical(new PECanonicalizerTool(methodScope.graph.getAssumptions(), methodScope.graph.getOptions())); if (canonical == null) { /* * This is a possible return value of canonicalization. However, we might need to * add additional usages later on for which we need a node. Therefore, we just do * nothing and leave the node in place.

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/SimplifyingGraphDecoder.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File