< prev index next >
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CompareCanonicalizerTest3.java
Print this page
rev 52509 : [mq]: graal
*** 90,109 ****
@Test
public void test1() {
assertCanonicallyEqual("integerTestCanonicalization1", "referenceSnippet1");
}
! public static void integerTestCanonicalization1(char a) {
! if (Integer.compareUnsigned(a - 2, a) < 0) {
sink1 = 0;
} else {
sink0 = -1;
}
}
! public static void referenceSnippet1(char a) {
! if (Integer.compareUnsigned(a, 2) >= 0) {
sink1 = 0;
} else {
sink0 = -1;
}
}
--- 90,111 ----
@Test
public void test1() {
assertCanonicallyEqual("integerTestCanonicalization1", "referenceSnippet1");
}
! public static void integerTestCanonicalization1(char[] a) {
! int len = a.length;
! if (Integer.compareUnsigned(len - 2, len) < 0) {
sink1 = 0;
} else {
sink0 = -1;
}
}
! public static void referenceSnippet1(char[] a) {
! int len = a.length;
! if (Integer.compareUnsigned(len, 2) >= 0) {
sink1 = 0;
} else {
sink0 = -1;
}
}
*** 236,251 ****
--- 238,259 ----
protected void assertCanonicallyEqual(String snippet, String reference) {
StructuredGraph graph = parseEager(snippet, AllowAssumptions.YES);
PhaseContext context = new PhaseContext(getProviders());
CanonicalizerPhase canonicalizer = new CanonicalizerPhase();
+
canonicalizer.apply(graph, context);
new GuardLoweringPhase().apply(graph, new MidTierContext(getProviders(), getTargetProvider(), OptimisticOptimizations.ALL, graph.getProfilingInfo()));
new FrameStateAssignmentPhase().apply(graph);
canonicalizer.apply(graph, context);
+
StructuredGraph referenceGraph = parseEager(reference, AllowAssumptions.YES);
canonicalizer.apply(referenceGraph, context);
+ new GuardLoweringPhase().apply(referenceGraph, new MidTierContext(getProviders(), getTargetProvider(), OptimisticOptimizations.ALL, graph.getProfilingInfo()));
+ new FrameStateAssignmentPhase().apply(referenceGraph);
+ canonicalizer.apply(referenceGraph, context);
+
canonicalizer.apply(referenceGraph, context);
assertEquals(referenceGraph, graph, true, true);
}
@Override
< prev index next >