comparison graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotBackendFactory.java @ 18512:7a3bba33f2b7

added support for binding arguments of arbitrary types to parameters of a SubstitutionGuard constructor used above support to remove static access to HotSpotGraalRuntime from CRC32Substitutions.Guard
author Doug Simon <doug.simon@oracle.com>
date Wed, 26 Nov 2014 09:27:58 +0100
parents fe0db662e982
children c538c2c6b7e2
comparison
equal deleted inserted replaced
18511:62aac33db669 18512:7a3bba33f2b7
155 // Replacements cannot have speculative optimizations since they have 155 // Replacements cannot have speculative optimizations since they have
156 // to be valid for the entire run of the VM. 156 // to be valid for the entire run of the VM.
157 Assumptions assumptions = new Assumptions(false); 157 Assumptions assumptions = new Assumptions(false);
158 Providers p = new Providers(metaAccess, codeCache, constantReflection, foreignCalls, lowerer, null, new HotSpotStampProvider()); 158 Providers p = new Providers(metaAccess, codeCache, constantReflection, foreignCalls, lowerer, null, new HotSpotStampProvider());
159 try (InitTimer rt = timer("create SnippetReflection provider")) { 159 try (InitTimer rt = timer("create SnippetReflection provider")) {
160 snippetReflection = createSnippetReflection(); 160 snippetReflection = createSnippetReflection(runtime);
161 } 161 }
162 try (InitTimer rt = timer("create Replacements provider")) { 162 try (InitTimer rt = timer("create Replacements provider")) {
163 replacements = createReplacements(runtime, assumptions, p, snippetReflection); 163 replacements = createReplacements(runtime, assumptions, p, snippetReflection);
164 } 164 }
165 try (InitTimer rt = timer("create Disassembler provider")) { 165 try (InitTimer rt = timer("create Disassembler provider")) {
214 214
215 protected HotSpotSuitesProvider createSuites(HotSpotGraalRuntime runtime) { 215 protected HotSpotSuitesProvider createSuites(HotSpotGraalRuntime runtime) {
216 return new HotSpotSuitesProvider(runtime); 216 return new HotSpotSuitesProvider(runtime);
217 } 217 }
218 218
219 protected HotSpotSnippetReflectionProvider createSnippetReflection() { 219 protected HotSpotSnippetReflectionProvider createSnippetReflection(HotSpotGraalRuntime runtime) {
220 return new HotSpotSnippetReflectionProvider(); 220 return new HotSpotSnippetReflectionProvider(runtime);
221 } 221 }
222 222
223 protected HotSpotLoweringProvider createLowerer(HotSpotGraalRuntime runtime, HotSpotMetaAccessProvider metaAccess, HotSpotForeignCallsProvider foreignCalls, HotSpotRegistersProvider registers, 223 protected HotSpotLoweringProvider createLowerer(HotSpotGraalRuntime runtime, HotSpotMetaAccessProvider metaAccess, HotSpotForeignCallsProvider foreignCalls, HotSpotRegistersProvider registers,
224 TargetDescription target) { 224 TargetDescription target) {
225 return new AMD64HotSpotLoweringProvider(runtime, metaAccess, foreignCalls, registers, target); 225 return new AMD64HotSpotLoweringProvider(runtime, metaAccess, foreignCalls, registers, target);