diff options
Diffstat (limited to 'src/test/java/com/seaofnodes/simple/Chapter10Test.java')
| -rw-r--r-- | src/test/java/com/seaofnodes/simple/Chapter10Test.java | 44 |
1 files changed, 22 insertions, 22 deletions
diff --git a/src/test/java/com/seaofnodes/simple/Chapter10Test.java b/src/test/java/com/seaofnodes/simple/Chapter10Test.java index 4fd20b18..afe0b141 100644 --- a/src/test/java/com/seaofnodes/simple/Chapter10Test.java +++ b/src/test/java/com/seaofnodes/simple/Chapter10Test.java @@ -120,7 +120,7 @@ if( (arg/13)==0 ) { int r = g+h; return p-r; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 0;", code.print()); } @@ -140,7 +140,7 @@ bar.a = 1; bar.a = 2; return bar.a; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 2;", code.print()); } @@ -156,7 +156,7 @@ else v.y = 3; return v; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Vector2D;", code.print()); } @@ -194,7 +194,7 @@ while (arg) { } return bar.a; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Phi(Loop,0,(Phi_a+2));", code.print()); } @@ -246,7 +246,7 @@ if (arg) bar = null; if( bar ) bar.a = 1; return bar; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Phi(Region,null,Bar);", code.print()); } @@ -262,7 +262,7 @@ if( !bar ) rez=4; else bar.a = 1; return rez; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Phi(Region,4,3);", code.print()); } @@ -316,7 +316,7 @@ while( i.x < i.len ) { } return sum; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Phi(Loop,0,(Phi(Loop,0,(Phi_x+1))+Phi_sum));", code.print()); } @@ -335,7 +335,7 @@ while(arg) { } return ret; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Phi(Loop,s0,Phi(Region,s0,Phi_ret));", code.print()); } @@ -353,7 +353,7 @@ while(arg) { } return ret; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Phi(Loop,s0,Phi(Region,s0,Phi_ret));", code.print()); } @@ -370,7 +370,7 @@ while(arg < 10) { } return ret; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return Phi(Loop,s0,Phi(Region,s0,Phi_ret));", code.print()); } @@ -398,7 +398,7 @@ if(0) { } return 0; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 0;", code.print()); } @@ -412,7 +412,7 @@ if(0) return 0; else return new s0; if(new s0.f0) return 0; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return s0;", code.print()); } @@ -428,7 +428,7 @@ while(0<arg) { } return 0; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); } @Test @@ -440,7 +440,7 @@ while(v0.f0) {} s0 v1 = v0; return v1; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return (const)s0;", code.print()); } @@ -473,7 +473,7 @@ while(0) {} } return 0; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 0;", code.print()); } @@ -484,7 +484,7 @@ int v0=arg==0; while(v0) continue; return 0; """); - code.parse().iter().finalizeIR(); + code.driver(CodeGen.Phase.FinalizeIR); assertEquals("return 0;", code.print()); } @@ -498,7 +498,7 @@ return 0; a.y = 55; b.y = 66; a.x = 33; b.x = 44; return before*100 + p.x; - """).parse().iter().finalizeIR(); + """).driver(CodeGen.Phase.FinalizeIR); StopNode stop = code._stop; assertEquals("1133",Eval2.eval(code,0)); assertEquals("2244",Eval2.eval(code,1)); @@ -524,7 +524,7 @@ return 0; """; @Test public void testMemoryAcrossNestedLoops() { - var code = new CodeGen(NESTED_MEMORY).parse().iter().finalizeIR(); + var code = new CodeGen(NESTED_MEMORY).driver(CodeGen.Phase.FinalizeIR); StopNode stop = code._stop; for (int arg=0; arg<7; arg++) { assertEquals("S{x="+(5L+arg)+",y="+(7L+arg*(arg+1)-(arg>=2 ? 2 : 0))+ @@ -540,7 +540,7 @@ return 0; if (arg) { s.x = 11; s.z = 13; return s; } s.y = 17; return s; - """).parse().iter().finalizeIR(); + """).driver(CodeGen.Phase.FinalizeIR); StopNode stop = code._stop; for (int arg=0; arg<2; arg++) { assertEquals(arg==0 ? "S{x=3,y=17,z=7}" : "S{x=11,y=5,z=13}",Eval2.eval(code,arg)); @@ -557,7 +557,7 @@ return 0; int v; if (arg>1) v=p.x; else v=q.x; return v; - """).parse().iter().finalizeIR(); + """).driver(CodeGen.Phase.FinalizeIR); StopNode stop = code._stop; // The one-step safety check stops at the memory aggregate. assertEquals(2,countMemoryNodes(stop,LoadNode.class,new BitSet())); @@ -572,7 +572,7 @@ return 0; !S !s = new S; if (arg) s.x=arg+1; else s.x=arg+2; return s; - """).parse().iter().finalizeIR(); + """).driver(CodeGen.Phase.FinalizeIR); StopNode stop = code._stop; // Keep each Store on its own branch. assertEquals(2,countMemoryNodes(stop,StoreNode.class,new BitSet())); @@ -591,7 +591,7 @@ return 0; if (arg>1) { v=p.x; p.x=41; p.y=5; } else { v=q.x; q.x=42; } return v; - """).parse().iter().finalizeIR(); + """).driver(CodeGen.Phase.FinalizeIR); StopNode stop = code._stop; assertEquals(2,countMemoryNodes(stop,LoadNode.class,new BitSet())); assertEquals("-1",Eval2.eval(code,-1)); |
