comparison graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapePhase.java @ 15018:db4254246f9a

Remove Constant.forObject and Constant.asObject to improve compiler/VM separation
author Christian Wimmer <christian.wimmer@oracle.com>
date Mon, 07 Apr 2014 16:09:17 -0700
parents 23ccaa863eda
children d90e5c22ba55
comparison
equal deleted inserted replaced
15017:ff5660822992 15018:db4254246f9a
70 } 70 }
71 71
72 @Override 72 @Override
73 protected Closure<?> createEffectsClosure(PhaseContext context, SchedulePhase schedule) { 73 protected Closure<?> createEffectsClosure(PhaseContext context, SchedulePhase schedule) {
74 if (readElimination) { 74 if (readElimination) {
75 return new PEReadEliminationClosure(schedule, context.getMetaAccess(), context.getAssumptions()); 75 return new PEReadEliminationClosure(schedule, context.getMetaAccess(), context.getConstantReflection(), context.getAssumptions());
76 } else { 76 } else {
77 return new PartialEscapeClosure.Final(schedule, context.getMetaAccess(), context.getAssumptions()); 77 return new PartialEscapeClosure.Final(schedule, context.getMetaAccess(), context.getConstantReflection(), context.getAssumptions());
78 } 78 }
79 } 79 }
80 80
81 public static Map<Invoke, Double> getHints(StructuredGraph graph) { 81 public static Map<Invoke, Double> getHints(StructuredGraph graph) {
82 NodesToDoubles probabilities = new ComputeProbabilityClosure(graph).apply(); 82 NodesToDoubles probabilities = new ComputeProbabilityClosure(graph).apply();