src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/aot/ResolveConstantSnippets.java
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
hotspot Cdiff src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/aot/ResolveConstantSnippets.java
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/aot/ResolveConstantSnippets.java
Print this page
*** 25,34 ****
--- 25,35 ----
import static org.graalvm.compiler.nodes.extended.BranchProbabilityNode.VERY_SLOW_PATH_PROBABILITY;
import static org.graalvm.compiler.nodes.extended.BranchProbabilityNode.probability;
import static org.graalvm.compiler.replacements.SnippetTemplate.DEFAULT_REPLACER;
import org.graalvm.compiler.api.replacements.Snippet;
+ import org.graalvm.compiler.debug.DebugHandlersFactory;
import org.graalvm.compiler.debug.GraalError;
import org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction;
import org.graalvm.compiler.hotspot.meta.HotSpotProviders;
import org.graalvm.compiler.hotspot.nodes.aot.EncodedSymbolNode;
import org.graalvm.compiler.hotspot.nodes.aot.InitializeKlassNode;
*** 112,123 ****
private final SnippetInfo resolveKlassConstant = snippet(ResolveConstantSnippets.class, "resolveKlassConstant");
private final SnippetInfo resolveMethodAndLoadCounters = snippet(ResolveConstantSnippets.class, "resolveMethodAndLoadCounters");
private final SnippetInfo initializeKlass = snippet(ResolveConstantSnippets.class, "initializeKlass");
private final SnippetInfo pureInitializeKlass = snippet(ResolveConstantSnippets.class, "pureInitializeKlass");
! public Templates(OptionValues options, HotSpotProviders providers, TargetDescription target) {
! super(options, providers, providers.getSnippetReflection(), target);
}
public void lower(ResolveConstantNode resolveConstantNode, LoweringTool tool) {
StructuredGraph graph = resolveConstantNode.graph();
--- 113,124 ----
private final SnippetInfo resolveKlassConstant = snippet(ResolveConstantSnippets.class, "resolveKlassConstant");
private final SnippetInfo resolveMethodAndLoadCounters = snippet(ResolveConstantSnippets.class, "resolveMethodAndLoadCounters");
private final SnippetInfo initializeKlass = snippet(ResolveConstantSnippets.class, "initializeKlass");
private final SnippetInfo pureInitializeKlass = snippet(ResolveConstantSnippets.class, "pureInitializeKlass");
! public Templates(OptionValues options, Iterable<DebugHandlersFactory> factories, HotSpotProviders providers, TargetDescription target) {
! super(options, factories, providers, providers.getSnippetReflection(), target);
}
public void lower(ResolveConstantNode resolveConstantNode, LoweringTool tool) {
StructuredGraph graph = resolveConstantNode.graph();
*** 146,156 ****
}
Arguments args = new Arguments(snippet, graph.getGuardsStage(), tool.getLoweringStage());
args.add("constant", value);
! SnippetTemplate template = template(args);
template.instantiate(providers.getMetaAccess(), resolveConstantNode, DEFAULT_REPLACER, args);
assert resolveConstantNode.hasNoUsages();
if (!resolveConstantNode.isDeleted()) {
GraphUtil.killWithUnusedFloatingInputs(resolveConstantNode);
--- 147,157 ----
}
Arguments args = new Arguments(snippet, graph.getGuardsStage(), tool.getLoweringStage());
args.add("constant", value);
! SnippetTemplate template = template(graph.getDebug(), args);
template.instantiate(providers.getMetaAccess(), resolveConstantNode, DEFAULT_REPLACER, args);
assert resolveConstantNode.hasNoUsages();
if (!resolveConstantNode.isDeleted()) {
GraphUtil.killWithUnusedFloatingInputs(resolveConstantNode);
*** 166,176 ****
if (constant instanceof HotSpotMetaspaceConstant) {
Arguments args = new Arguments(initializeKlass, graph.getGuardsStage(), tool.getLoweringStage());
args.add("constant", value);
! SnippetTemplate template = template(args);
template.instantiate(providers.getMetaAccess(), initializeKlassNode, DEFAULT_REPLACER, args);
assert initializeKlassNode.hasNoUsages();
if (!initializeKlassNode.isDeleted()) {
GraphUtil.killWithUnusedFloatingInputs(initializeKlassNode);
}
--- 167,177 ----
if (constant instanceof HotSpotMetaspaceConstant) {
Arguments args = new Arguments(initializeKlass, graph.getGuardsStage(), tool.getLoweringStage());
args.add("constant", value);
! SnippetTemplate template = template(graph.getDebug(), args);
template.instantiate(providers.getMetaAccess(), initializeKlassNode, DEFAULT_REPLACER, args);
assert initializeKlassNode.hasNoUsages();
if (!initializeKlassNode.isDeleted()) {
GraphUtil.killWithUnusedFloatingInputs(initializeKlassNode);
}
*** 184,194 ****
StructuredGraph graph = resolveMethodAndLoadCountersNode.graph();
ConstantNode method = ConstantNode.forConstant(MethodPointerStamp.methodNonNull(), resolveMethodAndLoadCountersNode.getMethod().getEncoding(), tool.getMetaAccess(), graph);
Arguments args = new Arguments(resolveMethodAndLoadCounters, graph.getGuardsStage(), tool.getLoweringStage());
args.add("method", method);
args.add("klassHint", resolveMethodAndLoadCountersNode.getHub());
! SnippetTemplate template = template(args);
template.instantiate(providers.getMetaAccess(), resolveMethodAndLoadCountersNode, DEFAULT_REPLACER, args);
assert resolveMethodAndLoadCountersNode.hasNoUsages();
if (!resolveMethodAndLoadCountersNode.isDeleted()) {
GraphUtil.killWithUnusedFloatingInputs(resolveMethodAndLoadCountersNode);
--- 185,195 ----
StructuredGraph graph = resolveMethodAndLoadCountersNode.graph();
ConstantNode method = ConstantNode.forConstant(MethodPointerStamp.methodNonNull(), resolveMethodAndLoadCountersNode.getMethod().getEncoding(), tool.getMetaAccess(), graph);
Arguments args = new Arguments(resolveMethodAndLoadCounters, graph.getGuardsStage(), tool.getLoweringStage());
args.add("method", method);
args.add("klassHint", resolveMethodAndLoadCountersNode.getHub());
! SnippetTemplate template = template(graph.getDebug(), args);
template.instantiate(providers.getMetaAccess(), resolveMethodAndLoadCountersNode, DEFAULT_REPLACER, args);
assert resolveMethodAndLoadCountersNode.hasNoUsages();
if (!resolveMethodAndLoadCountersNode.isDeleted()) {
GraphUtil.killWithUnusedFloatingInputs(resolveMethodAndLoadCountersNode);
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/aot/ResolveConstantSnippets.java
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File