src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/stubs/SnippetStub.java
changeset 58877 aec7bf35d6f5
parent 58299 6df94ce3ab2f
equal deleted inserted replaced
58876:1a8d65e71a66 58877:aec7bf35d6f5
    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         }