public static CompilationResult compile(DebugContext debug, RuntimeConfiguration runtimeConfig, Suites suites, LIRSuites lirSuites, final SubstrateMethod method) { updateGraalArchitectureWithHostCPUFeatures(runtimeConfig.lookupBackend(method)); return doCompile(debug, runtimeConfig, suites, lirSuites, method); }
public static InstalledCode compileAndInstall(OptionValues options, RuntimeConfiguration runtimeConfig, Suites suites, LIRSuites lirSuites, SubstrateMethod method, boolean testTrampolineJumps) { updateGraalArchitectureWithHostCPUFeatures(runtimeConfig.lookupBackend(method)); DebugContext debug = DebugContext.create(options, new GraalDebugHandlersFactory(GraalSupport.getRuntimeConfig().getSnippetReflection())); // create the installed code descriptor SubstrateInstalledCodeImpl installedCode = new SubstrateInstalledCodeImpl(method); // do compilation and code installation and update the installed code descriptor SubstrateGraalUtils.doCompileAndInstall(debug, runtimeConfig, suites, lirSuites, method, installedCode, testTrampolineJumps); // return the installed code return installedCode; }
OptimisticOptimizations optimisticOpts = OptimisticOptimizations.ALL.remove(OptimisticOptimizations.Optimization.UseLoopLimitChecks); final Backend backend = runtimeConfig.lookupBackend(method);
SubstrateBackend backend = config.lookupBackend(method);
Providers providers = runtimeConfig.lookupBackend(method).getProviders(); new CanonicalizerPhase().apply(graph, new PhaseContext(providers));
HostedProviders providers = (HostedProviders) config.lookupBackend(method).getProviders(); boolean needParsing = false; OptionValues options = HostedOptionValues.singleton();