< prev index next >
src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotJVMCIRuntime.java
Print this page
*** 30,39 ****
--- 30,40 ----
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
+ import java.util.ServiceLoader;
import java.util.TreeMap;
import jdk.internal.misc.VM;
import jdk.vm.ci.code.Architecture;
import jdk.vm.ci.code.CompilationRequestResult;
*** 48,58 ****
import jdk.vm.ci.runtime.JVMCI;
import jdk.vm.ci.runtime.JVMCIBackend;
import jdk.vm.ci.runtime.JVMCICompiler;
import jdk.vm.ci.runtime.JVMCICompilerFactory;
import jdk.vm.ci.services.JVMCIServiceLocator;
- import jdk.vm.ci.services.Services;
/**
* HotSpot implementation of a JVMCI runtime.
*
* The initialization of this class is very fragile since it's initialized both through
--- 49,58 ----
*** 86,96 ****
/**
* A list of all supported JVMCI options.
*/
public enum Option {
// @formatter:off
! Compiler(String.class, null, "Selects the system compiler."),
// Note: The following one is not used (see InitTimer.ENABLED). It is added here
// so that -XX:+JVMCIPrintProperties shows the option.
InitTimer(Boolean.class, false, "Specifies if initialization timing is enabled."),
PrintConfig(Boolean.class, false, "Prints VM configuration available via JVMCI."),
TraceMethodDataFilter(String.class, null,
--- 86,99 ----
/**
* A list of all supported JVMCI options.
*/
public enum Option {
// @formatter:off
! Compiler(String.class, null, "Selects the system compiler. This must match the getCompilerName() value returned " +
! "by a jdk.vm.ci.runtime.JVMCICompilerFactory provider. " +
! "An empty string or the value \"null\" selects a compiler " +
! "that will raise an exception upon receiving a compilation request."),
// Note: The following one is not used (see InitTimer.ENABLED). It is added here
// so that -XX:+JVMCIPrintProperties shows the option.
InitTimer(Boolean.class, false, "Specifies if initialization timing is enabled."),
PrintConfig(Boolean.class, false, "Prints VM configuration available via JVMCI."),
TraceMethodDataFilter(String.class, null,
*** 206,216 ****
}
}
}
public static HotSpotJVMCIBackendFactory findFactory(String architecture) {
! for (HotSpotJVMCIBackendFactory factory : Services.load(HotSpotJVMCIBackendFactory.class)) {
if (factory.getArchitecture().equalsIgnoreCase(architecture)) {
return factory;
}
}
--- 209,219 ----
}
}
}
public static HotSpotJVMCIBackendFactory findFactory(String architecture) {
! for (HotSpotJVMCIBackendFactory factory : ServiceLoader.load(HotSpotJVMCIBackendFactory.class, ClassLoader.getSystemClassLoader())) {
if (factory.getArchitecture().equalsIgnoreCase(architecture)) {
return factory;
}
}
< prev index next >