diff options
| author | Cliff Click <cliffc@acm.org> | 2025-06-13 15:42:08 -0700 |
|---|---|---|
| committer | Cliff Click <cliffc@acm.org> | 2026-10-24 15:56:44 -0700 |
| commit | 89dd0a79da85b2c7102b7c8918a1466e6238fe94 (patch) | |
| tree | cfa3d1457e9c40ad79ae78ded15c7c2ff286d79d /src/test/java/com/seaofnodes/simple/Chapter09Test.java | |
| parent | 8309071562b63f77a15425ab2146e05dbcb5acfd (diff) | |
| download | Simple-linear-chapter24a.tar.gz Simple-linear-chapter24a.zip | |
Chapter 24a: SCCP Within a Functionlinear-chapter24a
Co-authored-by: Tamás Hadházy <85063808+Hels15@users.noreply.github.com>
Co-authored-by: Hsiang-Ying Fu <66062782+fuhsnn@users.noreply.github.com>
Co-authored-by: fuhsnn <66062782+fuhsnn@users.noreply.github.com>
Co-authored-by: Symious <14933944+symious@users.noreply.github.com>
Co-authored-by: Jun Kawasaki <jun784@gmail.com>
Co-authored-by: Hadházy Tamás <helsgithub15@gmail.com>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Diffstat (limited to 'src/test/java/com/seaofnodes/simple/Chapter09Test.java')
| -rw-r--r-- | src/test/java/com/seaofnodes/simple/Chapter09Test.java | 40 |
1 files changed, 20 insertions, 20 deletions
diff --git a/src/test/java/com/seaofnodes/simple/Chapter09Test.java b/src/test/java/com/seaofnodes/simple/Chapter09Test.java index 3a4415d9..f24d96eb 100644 --- a/src/test/java/com/seaofnodes/simple/Chapter09Test.java +++ b/src/test/java/com/seaofnodes/simple/Chapter09Test.java @@ -24,7 +24,7 @@ while(v0) { } return 0; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); } @Test @@ -40,7 +40,7 @@ else { } return x; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Phi(Region,(arg<<1),(Shl+1));", code.print()); Assert.assertEquals( "2", Eval2.eval(code, 1)); Assert.assertEquals("23", Eval2.eval(code, 11)); @@ -49,7 +49,7 @@ return x; @Test public void testGVN2() { CodeGen code = new CodeGen("return arg*arg-arg*arg;"); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 0;", code.print()); Assert.assertEquals("0", Eval2.eval(code, 1, 1)); } @@ -63,7 +63,7 @@ while (arg < 10) { } return arg; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Phi(Loop,arg,(Phi_arg+2));", code.print()); Assert.assertEquals("11", Eval2.eval(code, 1)); } @@ -80,7 +80,7 @@ while (arg < 10) { } return arg; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Phi(Loop,arg,(Phi_arg+4));", code.print()); Assert.assertEquals("13", Eval2.eval(code, 1)); } @@ -109,7 +109,7 @@ while (arg) { } return arg; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 0;", code.print()); } @@ -128,14 +128,14 @@ while(v1+arg) { } return 0; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 0;", code.print()); } @Test public void testWhile0() { CodeGen code = new CodeGen("while(0) continue; if(0) arg=0; return arg;"); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return arg;", code.print()); } @@ -148,7 +148,7 @@ if(0) while(0) { } return 0; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 0;", code.print()); } @@ -156,14 +156,14 @@ return 0; @Test public void testPrecedence() { CodeGen code = new CodeGen("return 3-1+2;"); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 4;", code.print()); } @Test public void testSwap2() { CodeGen code = new CodeGen("return 1+(1+1);"); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 3;", code.print()); } @@ -181,7 +181,7 @@ while(arg) { } return a; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Phi(Loop,0,(-(Phi_a+3)));", code.print()); } @@ -195,7 +195,7 @@ arg=0; int v0=0!=0<-0; return -0+0+0; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Top;", code.print()); } @@ -203,14 +203,14 @@ return -0+0+0; @Test public void testFuzz2() { CodeGen code = new CodeGen("return 0+-0;"); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 0;", code.print()); } @Test public void testFuzz3() { CodeGen code = new CodeGen("int v0=0; while(0==69) while(v0) return 0; return 0;"); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 0;", code.print()); } @@ -222,7 +222,7 @@ while(1) { if(1<0) while(arg==-0) arg=arg-arg; } """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Top;", code.print()); } @@ -244,7 +244,7 @@ while(1) { } return 0!=0; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Top;", code.print()); } @@ -257,7 +257,7 @@ while(0==1) while(v0) v0=1+v0; return 0; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 0;", code.print()); } @@ -273,14 +273,14 @@ while(1) v1=1; return v1+v0; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Top;", code.print()); } @Test public void testFuzz8() { CodeGen code = new CodeGen("while(arg) arg = arg - 1; return arg;"); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 0;", code.print()); } |
