public abstract class CompilerConfigurationFactory extends Object implements Comparable<CompilerConfigurationFactory>
CompilerConfiguration the compiler will use. Each factory must
have a unique CompilerConfigurationFactory.name and CompilerConfigurationFactory.autoSelectionPriority. The latter imposes a total
ordering between factories for the purpose of auto-selecting the factory to use.| Modifier and Type | Class and Description |
|---|---|
static interface |
CompilerConfigurationFactory.BackendMap |
static class |
CompilerConfigurationFactory.DefaultBackendMap |
| Modifier | Constructor and Description |
|---|---|
protected |
CompilerConfigurationFactory(String name,
int autoSelectionPriority) |
| Modifier and Type | Method and Description |
|---|---|
int |
compareTo(CompilerConfigurationFactory o) |
CompilerConfigurationFactory.BackendMap |
createBackendMap()
Collect the set of available backends for this compiler
configuration.
|
abstract CompilerConfiguration |
createCompilerConfiguration() |
abstract Instrumentation |
createInstrumentation(OptionValues options) |
String |
getName()
Returns a name that should uniquely identify this compiler configuration.
|
static CompilerConfigurationFactory |
selectFactory(String name,
OptionValues options,
HotSpotJVMCIRuntime runtime)
Selects and instantiates a
CompilerConfigurationFactory. |
static void |
setNativeImageLocationQualifier(String s)
Records a qualifier for the libgraal library (e.g., "PGO optimized").
|
protected CompilerConfigurationFactory(String name, int autoSelectionPriority)
public abstract CompilerConfiguration createCompilerConfiguration()
public abstract Instrumentation createInstrumentation(OptionValues options)
public CompilerConfigurationFactory.BackendMap createBackendMap()
public final String getName()
public int compareTo(CompilerConfigurationFactory o)
compareTo in interface Comparable<CompilerConfigurationFactory>public static CompilerConfigurationFactory selectFactory(String name, OptionValues options, HotSpotJVMCIRuntime runtime)
CompilerConfigurationFactory. The selection algorithm is
as follows: if name is non-null, then select the factory with the same name else if
Options.CompilerConfiguration.getValue() is non-null then select the factory whose
name matches the value else select the factory with the highest
CompilerConfigurationFactory.autoSelectionPriority value.name - the name of the compiler configuration to select (optional)public static void setNativeImageLocationQualifier(String s)