--- a/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotBackendFactory.java Thu Oct 31 14:23:06 2019 -0700
+++ b/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.sparc/src/org/graalvm/compiler/hotspot/sparc/SPARCHotSpotBackendFactory.java Thu Oct 31 16:54:16 2019 -0700
@@ -87,6 +87,7 @@
public HotSpotBackend createBackend(HotSpotGraalRuntimeProvider runtime, CompilerConfiguration compilerConfiguration, HotSpotJVMCIRuntime jvmciRuntime, HotSpotBackend host) {
assert host == null;
+ OptionValues options = runtime.getOptions();
GraalHotSpotVMConfig config = runtime.getVMConfig();
JVMCIBackend jvmci = jvmciRuntime.getHostJVMCIBackend();
HotSpotRegistersProvider registers = createRegisters();
@@ -106,12 +107,13 @@
BytecodeProvider bytecodeProvider = createBytecodeProvider(metaAccess, snippetReflection);
HotSpotReplacementsImpl replacements = createReplacements(target, p, snippetReflection, bytecodeProvider);
Plugins plugins = createGraphBuilderPlugins(runtime, compilerConfiguration, config, metaAccess, constantReflection, foreignCalls, snippetReflection, replacements, wordTypes,
- runtime.getOptions());
+ runtime.getOptions(), target);
replacements.setGraphBuilderPlugins(plugins);
HotSpotSuitesProvider suites = createSuites(config, runtime, compilerConfiguration, plugins, replacements);
HotSpotProviders providers = new HotSpotProviders(metaAccess, codeCache, constantReflection, constantFieldProvider, foreignCalls, lowerer, replacements, suites, registers,
snippetReflection, wordTypes, plugins, gc);
replacements.setProviders(providers);
+ replacements.maybeInitializeEncoder(options);
return createBackend(config, runtime, providers);
}
@@ -125,7 +127,8 @@
HotSpotSnippetReflectionProvider snippetReflection,
HotSpotReplacementsImpl replacements,
HotSpotWordTypes wordTypes,
- OptionValues options) {
+ OptionValues options,
+ TargetDescription target) {
Plugins plugins = HotSpotGraphBuilderPlugins.create(
graalRuntime,
compilerConfiguration,
@@ -136,8 +139,9 @@
snippetReflection,
foreignCalls,
replacements,
- options);
- SPARCGraphBuilderPlugins.register(plugins, replacements.getDefaultReplacementBytecodeProvider(), false);
+ options,
+ target);
+ SPARCGraphBuilderPlugins.register(plugins, replacements, false);
return plugins;
}