From fcce1e13814a02d8358eae9a40e33a7e6f2b5400 Mon Sep 17 00:00:00 2001 From: Cliff Click Date: Fri, 13 Jun 2025 15:42:08 -0700 Subject: Unifying Structs and Arrays --- .../java/com/seaofnodes/simple/Chapter07Test.java | 222 --------------------- 1 file changed, 222 deletions(-) delete mode 100644 src/test/java/com/seaofnodes/simple/Chapter07Test.java (limited to 'src/test/java/com/seaofnodes/simple/Chapter07Test.java') diff --git a/src/test/java/com/seaofnodes/simple/Chapter07Test.java b/src/test/java/com/seaofnodes/simple/Chapter07Test.java deleted file mode 100644 index 88554323..00000000 --- a/src/test/java/com/seaofnodes/simple/Chapter07Test.java +++ /dev/null @@ -1,222 +0,0 @@ -package com.seaofnodes.simple; - -import com.seaofnodes.simple.codegen.CodeGen; -import com.seaofnodes.simple.node.*; -import org.junit.Test; - -import static org.junit.Assert.*; - -public class Chapter07Test { - - @Test - public void testExample() { - CodeGen code = new CodeGen( -""" -while(arg < 10) { - arg = arg + 1; -} -return arg; -"""); - code.parse(); - assertEquals("return Phi(Loop,arg,(Phi_arg+1));", code.print()); - assertTrue(code.ctrl() instanceof CProjNode); - } - - @Test - public void testRegression() { - CodeGen code = new CodeGen( -""" -int a = 1; -if(arg){}else{ - while(a < 10) { - a = a + 1; - } -} -return a; -"""); - code.parse().opto(); - assertEquals("return Phi(Region,1,Phi(Loop,1,(Phi_a+1)));", code.print()); - } - - @Test - public void testWhileNested() { - CodeGen code = new CodeGen( -""" -int sum = 0; -int i = 0; -while(i < arg) { - i = i + 1; - int j = 0; - while( j < arg ) { - sum = sum + j; - j = j + 1; - } -} -return sum; -"""); - code.parse().opto(); - assertEquals("return Phi(Loop,0,Phi(Loop,Phi_sum,(Phi_sum+Phi(Loop,0,(Phi_j+1)))));", code.print()); - } - - @Test - public void testWhileScope() { - CodeGen code = new CodeGen( -""" -int a = 1; -int b = 2; -while(a < 10) { - if (a == 2) a = 3; - else b = 4; -} -return b; -"""); - code.parse(); - assertEquals("return Phi(Loop,2,Phi(Region,Phi_b,4));", code.print()); - assertTrue(code.ctrl() instanceof CProjNode); - } - - @Test - public void testWhileNestedIfAndInc() { - CodeGen code = new CodeGen( -""" -int a = 1; -int b = 2; -while(a < 10) { - if (a == 2) a = 3; - else b = 4; - b = b + 1; - a = a + 1; -} -return b; -"""); - code.parse().opto(); - assertEquals("return Phi(Loop,2,(Phi(Region,Phi_b,4)+1));", code.print()); - assertTrue(code.ctrl() instanceof CProjNode); - } - - - @Test - public void testWhile() { - CodeGen code = new CodeGen( -""" -int a = 1; -while(a < 10) { - a = a + 1; - a = a + 2; -} -return a; -"""); - code.parse(); - assertEquals("return Phi(Loop,1,(Phi_a+3));", code.print()); - assertTrue(code.ctrl() instanceof CProjNode); - } - - @Test - public void testWhilePeep() { - CodeGen code = new CodeGen( -""" -int a = 1; -while(a < 10) { - a = a + 1; - a = a + 2; -} -return a; -"""); - code.parse().opto(); - assertEquals("return Phi(Loop,1,(Phi_a+3));", code.print()); - assertTrue(code.ctrl() instanceof CProjNode); - } - - @Test - public void testWhile2() { - CodeGen code = new CodeGen( -""" -int a = 1; -while(arg) a = 2; -return a; -"""); - code.parse(); - assertEquals("return Phi(Loop,1,2);", code.print()); - assertTrue(code.ctrl() instanceof CProjNode); - } - - @Test - public void testWhile2Peep() { - CodeGen code = new CodeGen( -""" -int a = 1; -while(arg) a = 2; -return a; -"""); - code.parse().opto(); - assertEquals("return Phi(Loop,1,2);", code.print()); - assertTrue(code.ctrl() instanceof CProjNode); - } - - @Test - public void testWhile3() { - CodeGen code = new CodeGen( -""" -int a = 1; -while(a < 10) { - int b = a + 1; - a = b + 2; -} -return a; -"""); - code.parse(); - assertEquals("return Phi(Loop,1,(Phi_a+3));", code.print()); - assertTrue(code.ctrl() instanceof CProjNode); - } - - @Test - public void testWhile3Peep() { - CodeGen code = new CodeGen( -""" -int a = 1; -while(a < 10) { - int b = a + 1; - a = b + 2; -} -return a; -"""); - code.parse().opto(); - assertEquals("return Phi(Loop,1,(Phi_a+3));", code.print()); - assertTrue(code.ctrl() instanceof CProjNode); - } - - @Test - public void testWhile4() { - CodeGen code = new CodeGen( -""" -int a = 1; -int b = 2; -while(a < 10) { - int b = a + 1; - a = b + 2; -} -return a; -"""); - code.parse(); - assertEquals("return Phi(Loop,1,(Phi_a+3));", code.print()); - assertTrue(code.ctrl() instanceof CProjNode); - } - - @Test - public void testWhile4Peep() { - CodeGen code = new CodeGen( -""" -int a = 1; -int b = 2; -while(a < 10) { - int b = a + 1; - a = b + 2; -} -return a; -"""); - code.parse().opto(); - assertEquals("return Phi(Loop,1,(Phi_a+3));", code.print()); - assertTrue(code.ctrl() instanceof CProjNode); - } - -} -- cgit v1.2.3