hotspot/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLoweringProvider.java
--- a/hotspot/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLoweringProvider.java Mon Dec 12 16:16:27 2016 +0300
+++ b/hotspot/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.amd64/src/org/graalvm/compiler/hotspot/amd64/AMD64HotSpotLoweringProvider.java Wed Mar 22 13:42:45 2017 -0700
@@ -27,8 +27,8 @@
import static org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_EXP_STUB;
import static org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_LOG10_STUB;
import static org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_LOG_STUB;
+import static org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_POW_STUB;
import static org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_SIN_STUB;
-import static org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_POW_STUB;
import static org.graalvm.compiler.hotspot.amd64.AMD64HotSpotForeignCallsProvider.ARITHMETIC_TAN_STUB;
import org.graalvm.compiler.core.common.spi.ForeignCallDescriptor;
@@ -43,6 +43,7 @@
import org.graalvm.compiler.hotspot.replacements.profiling.ProbabilisticProfileSnippets;
import org.graalvm.compiler.nodes.calc.FloatConvertNode;
import org.graalvm.compiler.nodes.spi.LoweringTool;
+import org.graalvm.compiler.options.OptionValues;
import org.graalvm.compiler.replacements.amd64.AMD64ConvertSnippets;
import org.graalvm.compiler.replacements.nodes.BinaryMathIntrinsicNode.BinaryOperation;
import org.graalvm.compiler.replacements.nodes.UnaryMathIntrinsicNode.UnaryOperation;
@@ -62,10 +63,11 @@
}
@Override
- public void initialize(HotSpotProviders providers, GraalHotSpotVMConfig config) {
- convertSnippets = new AMD64ConvertSnippets.Templates(providers, providers.getSnippetReflection(), providers.getCodeCache().getTarget());
- profileSnippets = ProfileNode.Options.ProbabilisticProfiling.getValue() ? new ProbabilisticProfileSnippets.Templates(providers, providers.getCodeCache().getTarget()) : null;
- super.initialize(providers, config);
+ public void initialize(OptionValues options, HotSpotProviders providers, GraalHotSpotVMConfig config) {
+ convertSnippets = new AMD64ConvertSnippets.Templates(options, providers, providers.getSnippetReflection(), providers.getCodeCache().getTarget());
+ profileSnippets = ProfileNode.Options.ProbabilisticProfiling.getValue(options)
+ ? new ProbabilisticProfileSnippets.Templates(options, providers, providers.getCodeCache().getTarget()) : null;
+ super.initialize(options, providers, config);
}
@Override
@@ -81,7 +83,7 @@
@Override
protected ForeignCallDescriptor toForeignCall(UnaryOperation operation) {
- if (GraalArithmeticStubs.getValue()) {
+ if (GraalArithmeticStubs.getValue(runtime.getOptions())) {
switch (operation) {
case LOG:
return ARITHMETIC_LOG_STUB;
@@ -105,7 +107,7 @@
@Override
protected ForeignCallDescriptor toForeignCall(BinaryOperation operation) {
- if (GraalArithmeticStubs.getValue()) {
+ if (GraalArithmeticStubs.getValue(runtime.getOptions())) {
switch (operation) {
case POW:
return ARITHMETIC_POW_STUB;