public class HotSpotSuitesProvider extends Object implements SuitesProvider
SuitesProvider
.Modifier and Type | Class and Description |
---|---|
private class |
HotSpotSuitesProvider.LIRSuitesSupplier |
private class |
HotSpotSuitesProvider.SuitesSupplier |
Modifier and Type | Field and Description |
---|---|
private AddressLoweringPhase.AddressLowering |
addressLowering |
protected PhaseSuite<HighTierContext> |
defaultGraphBuilderSuite |
private DerivedOptionValue<LIRSuites> |
defaultLIRSuites |
protected DerivedOptionValue<Suites> |
defaultSuites |
private SuitesProvider |
defaultSuitesProvider |
protected HotSpotGraalRuntimeProvider |
runtime |
Constructor and Description |
---|
HotSpotSuitesProvider(SuitesProvider defaultSuitesProvider,
HotSpotGraalRuntimeProvider runtime,
AddressLoweringPhase.AddressLowering addressLowering) |
Modifier and Type | Method and Description |
---|---|
private boolean |
appendGraphEncoderTest(PhaseSuite<HighTierContext> suite)
When assertions are enabled, we encode and decode every parsed graph, to ensure that the
encoding and decoding process work correctly.
|
protected PhaseSuite<HighTierContext> |
createGraphBuilderSuite() |
LIRSuites |
createLIRSuites()
Create a new set of low-level phase suites.
|
Suites |
createSuites()
Create a new set of phase suites.
|
PhaseSuite<HighTierContext> |
getDefaultGraphBuilderSuite()
Get the default phase suite for creating new graphs.
|
LIRSuites |
getDefaultLIRSuites()
Get the default phase suites of this compiler.
|
Suites |
getDefaultSuites()
Get the default phase suites of this compiler.
|
static PhaseSuite<HighTierContext> |
withSimpleDebugInfoIfRequested(PhaseSuite<HighTierContext> gbs)
|
protected final DerivedOptionValue<Suites> defaultSuites
protected final PhaseSuite<HighTierContext> defaultGraphBuilderSuite
private final DerivedOptionValue<LIRSuites> defaultLIRSuites
protected final HotSpotGraalRuntimeProvider runtime
private final AddressLoweringPhase.AddressLowering addressLowering
private final SuitesProvider defaultSuitesProvider
public HotSpotSuitesProvider(SuitesProvider defaultSuitesProvider, HotSpotGraalRuntimeProvider runtime, AddressLoweringPhase.AddressLowering addressLowering)
public Suites getDefaultSuites()
SuitesProvider
getDefaultSuites
in interface SuitesProvider
public PhaseSuite<HighTierContext> getDefaultGraphBuilderSuite()
SuitesProvider
getDefaultGraphBuilderSuite
in interface SuitesProvider
public Suites createSuites()
SuitesProvider
default
suites.createSuites
in interface SuitesProvider
protected PhaseSuite<HighTierContext> createGraphBuilderSuite()
private boolean appendGraphEncoderTest(PhaseSuite<HighTierContext> suite)
verifies the
encoding itself
, i.e., performs a decoding without canoncialization and checks the graphs
for equality.public static PhaseSuite<HighTierContext> withSimpleDebugInfoIfRequested(PhaseSuite<HighTierContext> gbs)
gbs
- the current graph builder suitepublic LIRSuites getDefaultLIRSuites()
SuitesProvider
getDefaultLIRSuites
in interface SuitesProvider
public LIRSuites createLIRSuites()
SuitesProvider
default
suites.createLIRSuites
in interface SuitesProvider