38 import jdk.vm.ci.meta.JavaKind; 39 40 public class LoadJavaMirrorWithKlassTest extends GraalCompilerTest { 41 42 private static class Wrapper { 43 private Class<?> clazz; 44 45 @Override 46 public boolean equals(Object obj) { 47 if (obj instanceof Wrapper) { 48 return Objects.equals(this.clazz, ((Wrapper) obj).clazz); 49 } else { 50 return false; 51 } 52 } 53 54 @Override 55 public int hashCode() { 56 return clazz.hashCode(); 57 } 58 } 59 60 @Override 61 @SuppressWarnings("try") 62 protected Suites createSuites(OptionValues options) { 63 return super.createSuites(getOptions()); 64 } 65 66 private static OptionValues getOptions() { 67 return new OptionValues(getInitialOptions(), GraalOptions.ImmutableCode, true); 68 } 69 70 @Override 71 protected boolean checkLowTierGraph(StructuredGraph graph) { 72 for (ConstantNode constantNode : graph.getNodes().filter(ConstantNode.class)) { 73 assert constantNode.asJavaConstant() == null || constantNode.asJavaConstant().getJavaKind() != JavaKind.Object || 74 constantNode.asJavaConstant().isDefaultForKind() : "Found unexpected object constant " + 75 constantNode + ", this should have been removed by the LoadJavaMirrorWithKlassPhase."; 76 } 77 return true; | 38 import jdk.vm.ci.meta.JavaKind; 39 40 public class LoadJavaMirrorWithKlassTest extends GraalCompilerTest { 41 42 private static class Wrapper { 43 private Class<?> clazz; 44 45 @Override 46 public boolean equals(Object obj) { 47 if (obj instanceof Wrapper) { 48 return Objects.equals(this.clazz, ((Wrapper) obj).clazz); 49 } else { 50 return false; 51 } 52 } 53 54 @Override 55 public int hashCode() { 56 return clazz.hashCode(); 57 } 58 59 @Override 60 public String toString() { 61 return "Wrapper-" + clazz; 62 } 63 } 64 65 @Override 66 @SuppressWarnings("try") 67 protected Suites createSuites(OptionValues options) { 68 return super.createSuites(getOptions()); 69 } 70 71 private static OptionValues getOptions() { 72 return new OptionValues(getInitialOptions(), GraalOptions.ImmutableCode, true); 73 } 74 75 @Override 76 protected boolean checkLowTierGraph(StructuredGraph graph) { 77 for (ConstantNode constantNode : graph.getNodes().filter(ConstantNode.class)) { 78 assert constantNode.asJavaConstant() == null || constantNode.asJavaConstant().getJavaKind() != JavaKind.Object || 79 constantNode.asJavaConstant().isDefaultForKind() : "Found unexpected object constant " + 80 constantNode + ", this should have been removed by the LoadJavaMirrorWithKlassPhase."; 81 } 82 return true; |