summaryrefslogtreecommitdiff
path: root/src/test/java/com/seaofnodes/simple/Chapter10Test.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/com/seaofnodes/simple/Chapter10Test.java')
-rw-r--r--src/test/java/com/seaofnodes/simple/Chapter10Test.java46
1 files changed, 23 insertions, 23 deletions
diff --git a/src/test/java/com/seaofnodes/simple/Chapter10Test.java b/src/test/java/com/seaofnodes/simple/Chapter10Test.java
index 2a33031d..d41c83d8 100644
--- a/src/test/java/com/seaofnodes/simple/Chapter10Test.java
+++ b/src/test/java/com/seaofnodes/simple/Chapter10Test.java
@@ -44,7 +44,7 @@ struct Foo {
int x;
};
Foo? foo = null;
-Bar bar = new Bar;
+Bar !bar = new Bar;
bar.a = 1;
bar.a = 2;
return bar.a;
@@ -57,7 +57,7 @@ return bar.a;
public void testExample() {
Parser parser = new Parser("""
struct Vector2D { int x; int y; };
-Vector2D v = new Vector2D;
+Vector2D !v = new Vector2D;
v.x = 1;
if (arg)
v.y = 2;
@@ -96,7 +96,7 @@ arg=0+new s0.0;
public void testLoop() {
Parser parser = new Parser("""
struct Bar { int a; };
-Bar bar = new Bar;
+Bar !bar = new Bar;
while (arg) {
bar.a = bar.a + 2;
arg = arg + 1;
@@ -104,14 +104,14 @@ while (arg) {
return bar.a;
""");
StopNode stop = parser.parse().iterate();
- assertEquals("return Phi(Loop16,0,(Phi_a+2));", stop.toString());
+ assertEquals("return Phi(Loop,0,(Phi_a+2));", stop.toString());
}
@Test
public void testIf() {
Parser parser = new Parser("""
struct Bar { int a; };
-Bar bar = new Bar;
+Bar !bar = new Bar;
if (arg) bar = null;
bar.a = 1;
return bar.a;
@@ -124,7 +124,7 @@ return bar.a;
public void testIf2() {
Parser parser = new Parser("""
struct Bar { int a; };
-Bar? bar = null;
+Bar? !bar = null;
if (arg) bar = new Bar;
bar.a = 1;
return bar.a;
@@ -150,13 +150,13 @@ return bar.a;
public void testIfOrNull() {
Parser parser = new Parser("""
struct Bar { int a; };
-Bar? bar = new Bar;
+Bar? !bar = new Bar;
if (arg) bar = null;
if( bar ) bar.a = 1;
return bar;
""");
StopNode stop = parser.parse(false).iterate();
- assertEquals("return Phi(Region38,(*void)Phi(Region24,null,Bar),null);", stop.toString());
+ assertEquals("return Phi(Region,(*void)Phi(Region,null,Bar),null);", stop.toString());
}
@Test
@@ -164,7 +164,7 @@ return bar;
Parser parser = new Parser(
"""
struct Bar { int a; };
-Bar? bar = new Bar;
+Bar? !bar = new Bar;
if (arg) bar = null;
int rez = 3;
if( !bar ) rez=4;
@@ -172,14 +172,14 @@ else bar.a = 1;
return rez;
""");
StopNode stop = parser.parse(false).iterate();
- assertEquals("return Phi(Region44,4,3);", stop.toString());
+ assertEquals("return Phi(Region,4,3);", stop.toString());
}
@Test
public void testWhileWithNullInside() {
Parser parser = new Parser("""
struct s0 {int v0;};
-s0? v0 = new s0;
+s0? !v0 = new s0;
int ret = 0;
while(arg) {
ret = v0.v0;
@@ -216,7 +216,7 @@ struct Iter {
int x;
int len;
};
-Iter i = new Iter;
+Iter !i = new Iter;
i.len = arg;
int sum=0;
while( i.x < i.len ) {
@@ -226,7 +226,7 @@ while( i.x < i.len ) {
return sum;
""");
StopNode stop = parser.parse().iterate();
- assertEquals("return Phi(Loop21,0,(Phi(Loop,0,(Phi_x+1))+Phi_sum));", stop.toString());
+ assertEquals("return Phi(Loop,0,(Phi(Loop,0,(Phi_x+1))+Phi_sum));", stop.toString());
}
@@ -234,9 +234,9 @@ return sum;
public void test1() {
Parser parser = new Parser("""
struct s0 {int v0;};
-s0 ret = new s0;
+s0 !ret = new s0;
while(arg) {
- s0 v0 = new s0;
+ s0 !v0 = new s0;
v0.v0 = arg;
arg = arg-1;
if (arg==5) ret=v0;
@@ -245,15 +245,15 @@ while(arg) {
return ret;
""");
StopNode stop = parser.parse().iterate();
- assertEquals("return Phi(Loop16,s0,Phi(Region43,s0,Phi_ret));", stop.toString());
+ assertEquals("return Phi(Loop,s0,Phi(Region,s0,Phi_ret));", stop.toString());
}
@Test
public void test2() {
Parser parser = new Parser("""
struct s0 {int v0;};
-s0 ret = new s0;
-s0 v0 = new s0;
+s0 !ret = new s0;
+s0 !v0 = new s0;
while(arg) {
v0.v0 = arg;
arg = arg-1;
@@ -263,7 +263,7 @@ while(arg) {
return ret;
""");
StopNode stop = parser.parse().iterate();
- assertEquals("return Phi(Loop20,s0,Phi(Region44,s0,Phi_ret));", stop.toString());
+ assertEquals("return Phi(Loop,s0,Phi(Region,s0,Phi_ret));", stop.toString());
}
@@ -271,16 +271,16 @@ return ret;
public void test3() {
Parser parser = new Parser("""
struct s0 {int v0;};
-s0 ret = new s0;
+s0 !ret = new s0;
while(arg < 10) {
- s0 v0 = new s0;
+ s0 !v0 = new s0;
if (arg == 5) ret=v0;
arg = arg + 1;
}
return ret;
""");
StopNode stop = parser.parse().iterate();
- assertEquals("return Phi(Loop16,s0,Phi(Region41,s0,Phi_ret));", stop.toString());
+ assertEquals("return Phi(Loop,s0,Phi(Region,s0,Phi_ret));", stop.toString());
}
@Test
@@ -350,7 +350,7 @@ s0 v1 = v0;
return v1;
""");
StopNode stop = parser.parse().iterate();
- assertEquals("return s0;", stop.toString());
+ assertEquals("return (const)s0;", stop.toString());
}