--- a/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotProviders.java Thu Oct 17 20:27:44 2019 +0100
+++ b/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotProviders.java Thu Oct 17 20:53:35 2019 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -50,17 +50,18 @@
private final SnippetReflectionProvider snippetReflection;
private final HotSpotWordTypes wordTypes;
private final Plugins graphBuilderPlugins;
+ private final HotSpotGCProvider gc;
public HotSpotProviders(MetaAccessProvider metaAccess, HotSpotCodeCacheProvider codeCache, ConstantReflectionProvider constantReflection, ConstantFieldProvider constantField,
- HotSpotForeignCallsProvider foreignCalls, LoweringProvider lowerer, Replacements replacements, SuitesProvider suites,
- HotSpotRegistersProvider registers,
- SnippetReflectionProvider snippetReflection, HotSpotWordTypes wordTypes, Plugins graphBuilderPlugins) {
- super(metaAccess, codeCache, constantReflection, constantField, foreignCalls, lowerer, replacements, new HotSpotStampProvider());
+ HotSpotForeignCallsProvider foreignCalls, LoweringProvider lowerer, Replacements replacements, SuitesProvider suites, HotSpotRegistersProvider registers,
+ SnippetReflectionProvider snippetReflection, HotSpotWordTypes wordTypes, Plugins graphBuilderPlugins, HotSpotGCProvider gc) {
+ super(metaAccess, codeCache, constantReflection, constantField, foreignCalls, lowerer, replacements, new HotSpotStampProvider(), gc);
this.suites = suites;
this.registers = registers;
this.snippetReflection = snippetReflection;
this.wordTypes = wordTypes;
this.graphBuilderPlugins = graphBuilderPlugins;
+ this.gc = gc;
}
@Override
@@ -94,51 +95,54 @@
}
@Override
+ public HotSpotGCProvider getGC() {
+ return gc;
+ }
+
+ @Override
public Providers copyWith(MetaAccessProvider substitution) {
return new HotSpotProviders(substitution, getCodeCache(), getConstantReflection(), getConstantFieldProvider(), getForeignCalls(), getLowerer(), getReplacements(), getSuites(),
- getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins());
+ getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins(), getGC());
}
@Override
public Providers copyWith(CodeCacheProvider substitution) {
return new HotSpotProviders(getMetaAccess(), (HotSpotCodeCacheProvider) substitution, getConstantReflection(), getConstantFieldProvider(), getForeignCalls(), getLowerer(), getReplacements(),
- getSuites(),
- getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins());
+ getSuites(), getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins(), getGC());
}
@Override
public Providers copyWith(ConstantReflectionProvider substitution) {
return new HotSpotProviders(getMetaAccess(), getCodeCache(), substitution, getConstantFieldProvider(), getForeignCalls(), getLowerer(), getReplacements(), getSuites(),
- getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins());
+ getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins(), getGC());
}
@Override
public Providers copyWith(ConstantFieldProvider substitution) {
return new HotSpotProviders(getMetaAccess(), getCodeCache(), getConstantReflection(), substitution, getForeignCalls(), getLowerer(), getReplacements(), getSuites(),
- getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins());
+ getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins(), getGC());
}
@Override
public Providers copyWith(ForeignCallsProvider substitution) {
return new HotSpotProviders(getMetaAccess(), getCodeCache(), getConstantReflection(), getConstantFieldProvider(), (HotSpotForeignCallsProvider) substitution, getLowerer(), getReplacements(),
- getSuites(),
- getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins());
+ getSuites(), getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins(), getGC());
}
@Override
public Providers copyWith(LoweringProvider substitution) {
return new HotSpotProviders(getMetaAccess(), getCodeCache(), getConstantReflection(), getConstantFieldProvider(), getForeignCalls(), substitution, getReplacements(), getSuites(),
- getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins());
+ getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins(), getGC());
}
@Override
public Providers copyWith(Replacements substitution) {
return new HotSpotProviders(getMetaAccess(), getCodeCache(), getConstantReflection(), getConstantFieldProvider(), getForeignCalls(), getLowerer(), substitution, getSuites(),
- getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins());
+ getRegisters(), getSnippetReflection(), getWordTypes(), getGraphBuilderPlugins(), getGC());
}
public Providers copyWith(Plugins substitution) {
return new HotSpotProviders(getMetaAccess(), getCodeCache(), getConstantReflection(), getConstantFieldProvider(), getForeignCalls(), getLowerer(), getReplacements(), getSuites(),
- getRegisters(), getSnippetReflection(), getWordTypes(), substitution);
+ getRegisters(), getSnippetReflection(), getWordTypes(), substitution, getGC());
}
}