Mercurial > hg > graal-compiler
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); |