Mercurial > hg > truffle
changeset 15966:27ff0792b048
made more services implement com.oracle.graal.api.runtime.Service for faster loading
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Wed, 28 May 2014 14:47:34 +0200 |
parents | 272b64c1d65b |
children | 9a7803400ba7 |
files | graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/match/MatchProcessor.java graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/match/MatchRuleRegistry.java graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/match/MatchStatementSet.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/ReplacementsProvider.java graal/com.oracle.graal.truffle.hotspot/src/com/oracle/graal/truffle/hotspot/HotSpotTruffleRuntime.java graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/OptimizedCallTargetInstrumentationFactory.java |
diffstat | 6 files changed, 10 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/match/MatchProcessor.java Wed May 28 14:07:31 2014 +0200 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/match/MatchProcessor.java Wed May 28 14:47:34 2014 +0200 @@ -45,7 +45,7 @@ * be retrieved as follows: * * <pre> - * ServiceLoader<MatchStatementSet> sl = ServiceLoader.loadInstalled(MatchStatementSet.class); + * Iterable<MatchStatementSet> sl = Services.load(MatchStatementSet.class); * for (MatchStatementSet rules : sl) { * ... * }
--- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/match/MatchRuleRegistry.java Wed May 28 14:07:31 2014 +0200 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/match/MatchRuleRegistry.java Wed May 28 14:47:34 2014 +0200 @@ -27,6 +27,7 @@ import java.util.*; import java.util.Map.Entry; +import com.oracle.graal.api.runtime.*; import com.oracle.graal.compiler.common.*; import com.oracle.graal.compiler.gen.*; import com.oracle.graal.debug.*; @@ -125,7 +126,7 @@ */ public static Map<Class<? extends ValueNode>, List<MatchStatement>> createRules(Class<? extends NodeLIRBuilder> theClass, NodeClassLookup lookup) { HashMap<Class<? extends NodeLIRBuilder>, MatchStatementSet> matchSets = new HashMap<>(); - ServiceLoader<MatchStatementSet> sl = ServiceLoader.loadInstalled(MatchStatementSet.class); + Iterable<MatchStatementSet> sl = Services.load(MatchStatementSet.class); for (MatchStatementSet rules : sl) { matchSets.put(rules.forClass(), rules); }
--- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/match/MatchStatementSet.java Wed May 28 14:07:31 2014 +0200 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/match/MatchStatementSet.java Wed May 28 14:47:34 2014 +0200 @@ -24,9 +24,10 @@ import java.util.*; +import com.oracle.graal.api.runtime.*; import com.oracle.graal.compiler.gen.*; -public interface MatchStatementSet { +public interface MatchStatementSet extends Service { /** * @return the {@link NodeLIRBuilder} subclass which defined this set of {@link MatchStatement} * instances.
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/ReplacementsProvider.java Wed May 28 14:07:31 2014 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/ReplacementsProvider.java Wed May 28 14:47:34 2014 +0200 @@ -25,11 +25,12 @@ import com.oracle.graal.api.code.*; import com.oracle.graal.api.meta.*; import com.oracle.graal.api.replacements.*; +import com.oracle.graal.api.runtime.*; /** * Interface for service providers that register replacements with the compiler. */ -public interface ReplacementsProvider { +public interface ReplacementsProvider extends Service { void registerReplacements(MetaAccessProvider metaAccess, LoweringProvider lowerer, SnippetReflectionProvider snippetReflection, Replacements replacements, TargetDescription target); }
--- a/graal/com.oracle.graal.truffle.hotspot/src/com/oracle/graal/truffle/hotspot/HotSpotTruffleRuntime.java Wed May 28 14:07:31 2014 +0200 +++ b/graal/com.oracle.graal.truffle.hotspot/src/com/oracle/graal/truffle/hotspot/HotSpotTruffleRuntime.java Wed May 28 14:47:34 2014 +0200 @@ -213,7 +213,7 @@ } private static CompilationResultBuilderFactory getOptimizedCallTargetInstrumentationFactory(String arch, ResolvedJavaMethod method) { - for (OptimizedCallTargetInstrumentationFactory factory : ServiceLoader.loadInstalled(OptimizedCallTargetInstrumentationFactory.class)) { + for (OptimizedCallTargetInstrumentationFactory factory : Services.load(OptimizedCallTargetInstrumentationFactory.class)) { if (factory.getArchitecture().equals(arch)) { factory.setInstrumentedMethod(method); return factory;
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/OptimizedCallTargetInstrumentationFactory.java Wed May 28 14:07:31 2014 +0200 +++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/OptimizedCallTargetInstrumentationFactory.java Wed May 28 14:47:34 2014 +0200 @@ -23,13 +23,14 @@ package com.oracle.graal.truffle; import com.oracle.graal.api.meta.*; +import com.oracle.graal.api.runtime.*; import com.oracle.graal.lir.asm.*; /** * A service for creating a specialized {@link CompilationResultBuilder} used to inject code into * {@link OptimizedCallTarget#call(Object[])}. */ -public interface OptimizedCallTargetInstrumentationFactory extends CompilationResultBuilderFactory { +public interface OptimizedCallTargetInstrumentationFactory extends CompilationResultBuilderFactory, Service { /** * Gets the architecture supported by this factory.