src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/SnippetStub.java
equal
deleted
inserted
replaced
39 import org.graalvm.compiler.nodes.StructuredGraph.GuardsStage; |
39 import org.graalvm.compiler.nodes.StructuredGraph.GuardsStage; |
40 import org.graalvm.compiler.nodes.spi.LoweringTool; |
40 import org.graalvm.compiler.nodes.spi.LoweringTool; |
41 import org.graalvm.compiler.options.OptionValues; |
41 import org.graalvm.compiler.options.OptionValues; |
42 import org.graalvm.compiler.phases.common.CanonicalizerPhase; |
42 import org.graalvm.compiler.phases.common.CanonicalizerPhase; |
43 import org.graalvm.compiler.phases.common.LoweringPhase; |
43 import org.graalvm.compiler.phases.common.LoweringPhase; |
44 import org.graalvm.compiler.phases.common.RemoveValueProxyPhase; |
|
45 import org.graalvm.compiler.replacements.SnippetTemplate; |
44 import org.graalvm.compiler.replacements.SnippetTemplate; |
46 import org.graalvm.compiler.replacements.Snippets; |
45 import org.graalvm.compiler.replacements.Snippets; |
47 |
46 |
48 import jdk.vm.ci.meta.Local; |
47 import jdk.vm.ci.meta.Local; |
49 import jdk.vm.ci.meta.LocalVariableTable; |
48 import jdk.vm.ci.meta.LocalVariableTable; |
98 if (method.getParameterAnnotation(NonNullParameter.class, index) != null) { |
97 if (method.getParameterAnnotation(NonNullParameter.class, index) != null) { |
99 param.setStamp(param.stamp(NodeView.DEFAULT).join(StampFactory.objectNonNull())); |
98 param.setStamp(param.stamp(NodeView.DEFAULT).join(StampFactory.objectNonNull())); |
100 } |
99 } |
101 } |
100 } |
102 |
101 |
103 new RemoveValueProxyPhase().apply(graph); |
|
104 graph.setGuardsStage(GuardsStage.FLOATING_GUARDS); |
102 graph.setGuardsStage(GuardsStage.FLOATING_GUARDS); |
105 CanonicalizerPhase canonicalizer = new CanonicalizerPhase(); |
103 CanonicalizerPhase canonicalizer = CanonicalizerPhase.create(); |
106 canonicalizer.apply(graph, providers); |
104 canonicalizer.apply(graph, providers); |
107 new LoweringPhase(canonicalizer, LoweringTool.StandardLoweringStage.HIGH_TIER).apply(graph, providers); |
105 new LoweringPhase(canonicalizer, LoweringTool.StandardLoweringStage.HIGH_TIER).apply(graph, providers); |
108 } catch (Throwable e) { |
106 } catch (Throwable e) { |
109 throw debug.handle(e); |
107 throw debug.handle(e); |
110 } |
108 } |