comparison graal/com.oracle.graal.java/src/com/oracle/graal/java/DefaultSuitesProvider.java @ 19231:df89224ee04a

Add LowLevelSuites to SuitesProvider.
author Josef Eisl <josef.eisl@jku.at>
date Tue, 10 Feb 2015 10:29:39 +0100
parents 12c6c5a5bd88
children 9c921eb127ba
comparison
equal deleted inserted replaced
19230:ef1208c9eb78 19231:df89224ee04a
22 */ 22 */
23 package com.oracle.graal.java; 23 package com.oracle.graal.java;
24 24
25 import java.util.function.*; 25 import java.util.function.*;
26 26
27 import com.oracle.graal.lir.phases.*;
27 import com.oracle.graal.options.*; 28 import com.oracle.graal.options.*;
28 import com.oracle.graal.phases.*; 29 import com.oracle.graal.phases.*;
29 import com.oracle.graal.phases.tiers.*; 30 import com.oracle.graal.phases.tiers.*;
30 31
31 public class DefaultSuitesProvider implements SuitesProvider, Supplier<Suites> { 32 public class DefaultSuitesProvider implements SuitesProvider, Supplier<Suites> {
32 33
33 private final DerivedOptionValue<Suites> defaultSuites; 34 private final DerivedOptionValue<Suites> defaultSuites;
34 private final PhaseSuite<HighTierContext> defaultGraphBuilderSuite; 35 private final PhaseSuite<HighTierContext> defaultGraphBuilderSuite;
36 private final DerivedOptionValue<LowLevelSuites> defaultLowLevelSuites;
35 37
36 public DefaultSuitesProvider() { 38 public DefaultSuitesProvider() {
37 this.defaultGraphBuilderSuite = createGraphBuilderSuite(); 39 this.defaultGraphBuilderSuite = createGraphBuilderSuite();
38 this.defaultSuites = new DerivedOptionValue<>(this::createSuites); 40 this.defaultSuites = new DerivedOptionValue<>(this::createSuites);
41 this.defaultLowLevelSuites = new DerivedOptionValue<>(this::createLowLevelSuites);
39 } 42 }
40 43
41 public Suites getDefaultSuites() { 44 public Suites getDefaultSuites() {
42 return defaultSuites.getValue(); 45 return defaultSuites.getValue();
43 } 46 }
58 PhaseSuite<HighTierContext> suite = new PhaseSuite<>(); 61 PhaseSuite<HighTierContext> suite = new PhaseSuite<>();
59 suite.appendPhase(new GraphBuilderPhase(GraphBuilderConfiguration.getDefault())); 62 suite.appendPhase(new GraphBuilderPhase(GraphBuilderConfiguration.getDefault()));
60 return suite; 63 return suite;
61 } 64 }
62 65
66 public LowLevelSuites getDefaultLowLevelSuites() {
67 return defaultLowLevelSuites.getValue();
68 }
69
70 public LowLevelSuites createLowLevelSuites() {
71 return Suites.createDefaultLowLevelSuites();
72 }
73
63 } 74 }