From ed3c00fc69d41bdc63a0a6fe20efc4ded5351350 Mon Sep 17 00:00:00 2001
From: Robert Grancsa <robert.grancsa2002@gmail.com>
Date: Fri, 21 Mar 2025 22:00:50 +0200
Subject: [PATCH] Added first iteration of tests

Signed-off-by: Robert Grancsa <robert.grancsa2002@gmail.com>
---
 checker/input/00-transpiler.in |  7 +++++--
 checker/input/01-transpiler.in |  8 ++++++++
 checker/input/02-transpiler.in |  3 +++
 checker/input/03-transpiler.in | 10 ++++++++++
 checker/input/04-transpiler.in |  4 ++++
 checker/input/05-transpiler.in |  9 +++++++++
 checker/input/06-transpiler.in |  5 +++++
 checker/input/07-transpiler.in | 10 ++++++++++
 checker/input/08-transpiler.in |  3 +++
 checker/input/09-transpiler.in |  8 ++++++++
 checker/input/10-transpiler.in |  4 ++++
 checker/input/11-transpiler.in | 10 ++++++++++
 checker/input/12-transpiler.in |  4 ++++
 checker/input/13-transpiler.in |  8 ++++++++
 checker/input/14-transpiler.in |  4 ++++
 checker/input/15-transpiler.in |  8 ++++++++
 checker/input/16-transpiler.in |  4 ++++
 checker/input/17-transpiler.in | 10 ++++++++++
 checker/input/18-transpiler.in |  4 ++++
 checker/input/19-transpiler.in |  8 ++++++++
 checker/ref/00-transpiler.ref  |  6 +++++-
 checker/ref/01-transpiler.ref  |  8 ++++++++
 checker/ref/02-transpiler.ref  |  3 +++
 checker/ref/03-transpiler.ref  | 10 ++++++++++
 checker/ref/04-transpiler.ref  |  4 ++++
 checker/ref/05-transpiler.ref  |  9 +++++++++
 checker/ref/06-transpiler.ref  |  5 +++++
 checker/ref/07-transpiler.ref  | 10 ++++++++++
 checker/ref/08-transpiler.ref  |  3 +++
 checker/ref/09-transpiler.ref  |  8 ++++++++
 checker/ref/10-transpiler.ref  |  4 ++++
 checker/ref/11-transpiler.ref  |  9 +++++++++
 checker/ref/12-transpiler.ref  |  5 +++++
 checker/ref/13-transpiler.ref  | 10 ++++++++++
 checker/ref/14-transpiler.ref  |  5 +++++
 checker/ref/15-transpiler.ref  |  9 +++++++++
 checker/ref/16-transpiler.ref  |  5 +++++
 checker/ref/17-transpiler.ref  | 12 ++++++++++++
 checker/ref/18-transpiler.ref  |  3 +++
 checker/ref/19-transpiler.ref  |  8 ++++++++
 40 files changed, 264 insertions(+), 3 deletions(-)
 create mode 100644 checker/input/01-transpiler.in
 create mode 100644 checker/input/02-transpiler.in
 create mode 100644 checker/input/03-transpiler.in
 create mode 100644 checker/input/04-transpiler.in
 create mode 100644 checker/input/05-transpiler.in
 create mode 100644 checker/input/06-transpiler.in
 create mode 100644 checker/input/07-transpiler.in
 create mode 100644 checker/input/08-transpiler.in
 create mode 100644 checker/input/09-transpiler.in
 create mode 100644 checker/input/10-transpiler.in
 create mode 100644 checker/input/11-transpiler.in
 create mode 100644 checker/input/12-transpiler.in
 create mode 100644 checker/input/13-transpiler.in
 create mode 100644 checker/input/14-transpiler.in
 create mode 100644 checker/input/15-transpiler.in
 create mode 100644 checker/input/16-transpiler.in
 create mode 100644 checker/input/17-transpiler.in
 create mode 100644 checker/input/18-transpiler.in
 create mode 100644 checker/input/19-transpiler.in
 create mode 100644 checker/ref/01-transpiler.ref
 create mode 100644 checker/ref/02-transpiler.ref
 create mode 100644 checker/ref/03-transpiler.ref
 create mode 100644 checker/ref/04-transpiler.ref
 create mode 100644 checker/ref/05-transpiler.ref
 create mode 100644 checker/ref/06-transpiler.ref
 create mode 100644 checker/ref/07-transpiler.ref
 create mode 100644 checker/ref/08-transpiler.ref
 create mode 100644 checker/ref/09-transpiler.ref
 create mode 100644 checker/ref/10-transpiler.ref
 create mode 100644 checker/ref/11-transpiler.ref
 create mode 100644 checker/ref/12-transpiler.ref
 create mode 100644 checker/ref/13-transpiler.ref
 create mode 100644 checker/ref/14-transpiler.ref
 create mode 100644 checker/ref/15-transpiler.ref
 create mode 100644 checker/ref/16-transpiler.ref
 create mode 100644 checker/ref/17-transpiler.ref
 create mode 100644 checker/ref/18-transpiler.ref
 create mode 100644 checker/ref/19-transpiler.ref

diff --git a/checker/input/00-transpiler.in b/checker/input/00-transpiler.in
index fabeb82..7a83f3b 100644
--- a/checker/input/00-transpiler.in
+++ b/checker/input/00-transpiler.in
@@ -1,2 +1,5 @@
-b = 4
-a = b
\ No newline at end of file
+d = 77;
+b = 23;
+a = 96;
+a = 23;
+c = 58;
diff --git a/checker/input/01-transpiler.in b/checker/input/01-transpiler.in
new file mode 100644
index 0000000..5853bf9
--- /dev/null
+++ b/checker/input/01-transpiler.in
@@ -0,0 +1,8 @@
+a = c;
+d = d;
+d = 59;
+b = b;
+c = b;
+a = c;
+b = 76;
+b = 89;
diff --git a/checker/input/02-transpiler.in b/checker/input/02-transpiler.in
new file mode 100644
index 0000000..cd7257b
--- /dev/null
+++ b/checker/input/02-transpiler.in
@@ -0,0 +1,3 @@
+d = d & 42;
+b = b ^ 41;
+a = a ^ 39;
diff --git a/checker/input/03-transpiler.in b/checker/input/03-transpiler.in
new file mode 100644
index 0000000..7b6461b
--- /dev/null
+++ b/checker/input/03-transpiler.in
@@ -0,0 +1,10 @@
+c = c & 73;
+d = d & 45;
+a = a & 6;
+d = d & a;
+a = a | 19;
+b = b ^ a;
+a = a & 44;
+d = d ^ 89;
+d = d & 20;
+a = a & 41;
diff --git a/checker/input/04-transpiler.in b/checker/input/04-transpiler.in
new file mode 100644
index 0000000..6ceb215
--- /dev/null
+++ b/checker/input/04-transpiler.in
@@ -0,0 +1,4 @@
+a = a + d;
+c = c + 26;
+b = b + b;
+b = b + 63;
diff --git a/checker/input/05-transpiler.in b/checker/input/05-transpiler.in
new file mode 100644
index 0000000..20e9efd
--- /dev/null
+++ b/checker/input/05-transpiler.in
@@ -0,0 +1,9 @@
+c = c + 65;
+b = b + d;
+b = b + 20;
+d = d + a;
+b = b + d;
+d = d + 23;
+c = c + b;
+c = c + 52;
+a = a + 83;
diff --git a/checker/input/06-transpiler.in b/checker/input/06-transpiler.in
new file mode 100644
index 0000000..c7b8a3d
--- /dev/null
+++ b/checker/input/06-transpiler.in
@@ -0,0 +1,5 @@
+a = a - a;
+d = d - b;
+c = c - b;
+a = a - 55;
+b = b - 16;
diff --git a/checker/input/07-transpiler.in b/checker/input/07-transpiler.in
new file mode 100644
index 0000000..64403ff
--- /dev/null
+++ b/checker/input/07-transpiler.in
@@ -0,0 +1,10 @@
+b = b - 55;
+b = b - 22;
+b = b - 70;
+b = b - 90;
+b = b - 50;
+d = d - 82;
+a = a - 67;
+d = d - 83;
+b = b - 28;
+b = b - b;
diff --git a/checker/input/08-transpiler.in b/checker/input/08-transpiler.in
new file mode 100644
index 0000000..ebe47d2
--- /dev/null
+++ b/checker/input/08-transpiler.in
@@ -0,0 +1,3 @@
+c = c * 8;
+c = c * 1;
+c = c * 6;
diff --git a/checker/input/09-transpiler.in b/checker/input/09-transpiler.in
new file mode 100644
index 0000000..65f02da
--- /dev/null
+++ b/checker/input/09-transpiler.in
@@ -0,0 +1,8 @@
+b = b * 10;
+b = b * 4;
+b = b * 9;
+c = c * c;
+c = c * 6;
+c = c * a;
+c = c * 7;
+b = b * 0;
diff --git a/checker/input/10-transpiler.in b/checker/input/10-transpiler.in
new file mode 100644
index 0000000..8ca4ce9
--- /dev/null
+++ b/checker/input/10-transpiler.in
@@ -0,0 +1,4 @@
+b = b / 0;
+b = b / 9;
+b = b / c;
+b = b / c;
diff --git a/checker/input/11-transpiler.in b/checker/input/11-transpiler.in
new file mode 100644
index 0000000..fd16477
--- /dev/null
+++ b/checker/input/11-transpiler.in
@@ -0,0 +1,10 @@
+b = b / 8;
+b = b / 4;
+c = c / 0;
+c = c / 5;
+c = c / c;
+c = c / 2;
+c = c / 9;
+b = b / 8;
+b = b / 6;
+c = c / b;
diff --git a/checker/input/12-transpiler.in b/checker/input/12-transpiler.in
new file mode 100644
index 0000000..bc3ff44
--- /dev/null
+++ b/checker/input/12-transpiler.in
@@ -0,0 +1,4 @@
+a = a >> 2;
+a = a << 14;
+d = d >> 14;
+b = b >> 1;
diff --git a/checker/input/13-transpiler.in b/checker/input/13-transpiler.in
new file mode 100644
index 0000000..641a45e
--- /dev/null
+++ b/checker/input/13-transpiler.in
@@ -0,0 +1,8 @@
+d = d >> 20;
+a = a >> 24;
+b = b >> 4;
+b = b >> 7;
+d = d << 2;
+c = c >> 25;
+c = c << 31;
+a = a >> 24;
diff --git a/checker/input/14-transpiler.in b/checker/input/14-transpiler.in
new file mode 100644
index 0000000..2ea6b0a
--- /dev/null
+++ b/checker/input/14-transpiler.in
@@ -0,0 +1,4 @@
+if (d >= 82)
+if (c >= 23)
+if (d == 20)
+if (a < 0)
diff --git a/checker/input/15-transpiler.in b/checker/input/15-transpiler.in
new file mode 100644
index 0000000..926f840
--- /dev/null
+++ b/checker/input/15-transpiler.in
@@ -0,0 +1,8 @@
+if (b <= 93)
+if (d < 17)
+if (c < 80)
+if (d <= 93)
+if (a < 72)
+if (a > 75)
+if (d >= 73)
+if (d == 14)
diff --git a/checker/input/16-transpiler.in b/checker/input/16-transpiler.in
new file mode 100644
index 0000000..5a7a9d5
--- /dev/null
+++ b/checker/input/16-transpiler.in
@@ -0,0 +1,4 @@
+while (b > 55)
+while (b > 69)
+while (a >= 2)
+while (b <= 97)
diff --git a/checker/input/17-transpiler.in b/checker/input/17-transpiler.in
new file mode 100644
index 0000000..04b0954
--- /dev/null
+++ b/checker/input/17-transpiler.in
@@ -0,0 +1,10 @@
+while (b >= 3)
+while (d < 5)
+while (a <= 80)
+while (d >= 11)
+while (b <= 3)
+while (a <= 96)
+while (a <= 56)
+while (b == 58)
+while (c > 49)
+while (a <= 10)
diff --git a/checker/input/18-transpiler.in b/checker/input/18-transpiler.in
new file mode 100644
index 0000000..c365ee1
--- /dev/null
+++ b/checker/input/18-transpiler.in
@@ -0,0 +1,4 @@
+while (b >= 72)
+while (d <= 95)
+while (d > 95)
+while (d >= 69)
diff --git a/checker/input/19-transpiler.in b/checker/input/19-transpiler.in
new file mode 100644
index 0000000..410bf54
--- /dev/null
+++ b/checker/input/19-transpiler.in
@@ -0,0 +1,8 @@
+while (a <= 32)
+while (b < 99)
+while (c > 28)
+while (a == 65)
+while (c < 23)
+while (b >= 67)
+while (d >= 87)
+while (d < 52)
diff --git a/checker/ref/00-transpiler.ref b/checker/ref/00-transpiler.ref
index 30f1e67..7a83f3b 100644
--- a/checker/ref/00-transpiler.ref
+++ b/checker/ref/00-transpiler.ref
@@ -1 +1,5 @@
-MOV ceva, ceva
+d = 77;
+b = 23;
+a = 96;
+a = 23;
+c = 58;
diff --git a/checker/ref/01-transpiler.ref b/checker/ref/01-transpiler.ref
new file mode 100644
index 0000000..5853bf9
--- /dev/null
+++ b/checker/ref/01-transpiler.ref
@@ -0,0 +1,8 @@
+a = c;
+d = d;
+d = 59;
+b = b;
+c = b;
+a = c;
+b = 76;
+b = 89;
diff --git a/checker/ref/02-transpiler.ref b/checker/ref/02-transpiler.ref
new file mode 100644
index 0000000..cd7257b
--- /dev/null
+++ b/checker/ref/02-transpiler.ref
@@ -0,0 +1,3 @@
+d = d & 42;
+b = b ^ 41;
+a = a ^ 39;
diff --git a/checker/ref/03-transpiler.ref b/checker/ref/03-transpiler.ref
new file mode 100644
index 0000000..7b6461b
--- /dev/null
+++ b/checker/ref/03-transpiler.ref
@@ -0,0 +1,10 @@
+c = c & 73;
+d = d & 45;
+a = a & 6;
+d = d & a;
+a = a | 19;
+b = b ^ a;
+a = a & 44;
+d = d ^ 89;
+d = d & 20;
+a = a & 41;
diff --git a/checker/ref/04-transpiler.ref b/checker/ref/04-transpiler.ref
new file mode 100644
index 0000000..6ceb215
--- /dev/null
+++ b/checker/ref/04-transpiler.ref
@@ -0,0 +1,4 @@
+a = a + d;
+c = c + 26;
+b = b + b;
+b = b + 63;
diff --git a/checker/ref/05-transpiler.ref b/checker/ref/05-transpiler.ref
new file mode 100644
index 0000000..20e9efd
--- /dev/null
+++ b/checker/ref/05-transpiler.ref
@@ -0,0 +1,9 @@
+c = c + 65;
+b = b + d;
+b = b + 20;
+d = d + a;
+b = b + d;
+d = d + 23;
+c = c + b;
+c = c + 52;
+a = a + 83;
diff --git a/checker/ref/06-transpiler.ref b/checker/ref/06-transpiler.ref
new file mode 100644
index 0000000..c7b8a3d
--- /dev/null
+++ b/checker/ref/06-transpiler.ref
@@ -0,0 +1,5 @@
+a = a - a;
+d = d - b;
+c = c - b;
+a = a - 55;
+b = b - 16;
diff --git a/checker/ref/07-transpiler.ref b/checker/ref/07-transpiler.ref
new file mode 100644
index 0000000..64403ff
--- /dev/null
+++ b/checker/ref/07-transpiler.ref
@@ -0,0 +1,10 @@
+b = b - 55;
+b = b - 22;
+b = b - 70;
+b = b - 90;
+b = b - 50;
+d = d - 82;
+a = a - 67;
+d = d - 83;
+b = b - 28;
+b = b - b;
diff --git a/checker/ref/08-transpiler.ref b/checker/ref/08-transpiler.ref
new file mode 100644
index 0000000..ebe47d2
--- /dev/null
+++ b/checker/ref/08-transpiler.ref
@@ -0,0 +1,3 @@
+c = c * 8;
+c = c * 1;
+c = c * 6;
diff --git a/checker/ref/09-transpiler.ref b/checker/ref/09-transpiler.ref
new file mode 100644
index 0000000..65f02da
--- /dev/null
+++ b/checker/ref/09-transpiler.ref
@@ -0,0 +1,8 @@
+b = b * 10;
+b = b * 4;
+b = b * 9;
+c = c * c;
+c = c * 6;
+c = c * a;
+c = c * 7;
+b = b * 0;
diff --git a/checker/ref/10-transpiler.ref b/checker/ref/10-transpiler.ref
new file mode 100644
index 0000000..51a8e03
--- /dev/null
+++ b/checker/ref/10-transpiler.ref
@@ -0,0 +1,4 @@
+d = d / d;
+b = b / c;
+d = d / b;
+c = c / a;
diff --git a/checker/ref/11-transpiler.ref b/checker/ref/11-transpiler.ref
new file mode 100644
index 0000000..c15b1a1
--- /dev/null
+++ b/checker/ref/11-transpiler.ref
@@ -0,0 +1,9 @@
+d = d / b;
+d = d / c;
+c = c / 7;
+d = d / d;
+c = c / 5;
+b = b / 5;
+c = c / c;
+d = d / 8;
+d = d / 4;
diff --git a/checker/ref/12-transpiler.ref b/checker/ref/12-transpiler.ref
new file mode 100644
index 0000000..301c032
--- /dev/null
+++ b/checker/ref/12-transpiler.ref
@@ -0,0 +1,5 @@
+a = a >> 23;
+a = a << 28;
+a = a >> 2;
+a = a << 14;
+d = d >> 14;
diff --git a/checker/ref/13-transpiler.ref b/checker/ref/13-transpiler.ref
new file mode 100644
index 0000000..3c14a39
--- /dev/null
+++ b/checker/ref/13-transpiler.ref
@@ -0,0 +1,10 @@
+b = b >> 1;
+b = b >> 31;
+c = c << 21;
+d = d << 26;
+a = a << 31;
+a = a >> 10;
+a = a >> 21;
+d = d >> 3;
+d = d << 19;
+d = d >> 25;
diff --git a/checker/ref/14-transpiler.ref b/checker/ref/14-transpiler.ref
new file mode 100644
index 0000000..aac4e33
--- /dev/null
+++ b/checker/ref/14-transpiler.ref
@@ -0,0 +1,5 @@
+if (c >= 23)
+if (d == 20)
+if (a < 0)
+if (b > 58)
+if (d < 17)
diff --git a/checker/ref/15-transpiler.ref b/checker/ref/15-transpiler.ref
new file mode 100644
index 0000000..929f796
--- /dev/null
+++ b/checker/ref/15-transpiler.ref
@@ -0,0 +1,9 @@
+if (a <= 88)
+if (d >= 8)
+if (a >= 76)
+if (a > 75)
+if (d >= 73)
+if (d == 14)
+if (d > 20)
+if (d > 98)
+if (b >= 7)
diff --git a/checker/ref/16-transpiler.ref b/checker/ref/16-transpiler.ref
new file mode 100644
index 0000000..6c36c0f
--- /dev/null
+++ b/checker/ref/16-transpiler.ref
@@ -0,0 +1,5 @@
+while (a > 99)
+while (d > 74)
+while (a <= 15)
+while (a < 59)
+while (d >= 11)
diff --git a/checker/ref/17-transpiler.ref b/checker/ref/17-transpiler.ref
new file mode 100644
index 0000000..2150b3d
--- /dev/null
+++ b/checker/ref/17-transpiler.ref
@@ -0,0 +1,12 @@
+while (b <= 3) {
+    a = a + 23;
+}
+while (a <= 96)
+while (a <= 56)
+while (b == 58)
+while (c > 49)
+while (a <= 10)
+while (d > 76)
+while (d <= 95)
+while (d > 95)
+while (d >= 69)
diff --git a/checker/ref/18-transpiler.ref b/checker/ref/18-transpiler.ref
new file mode 100644
index 0000000..ad629ca
--- /dev/null
+++ b/checker/ref/18-transpiler.ref
@@ -0,0 +1,3 @@
+while (a <= 32)
+while (b < 99)
+while (c > 28)
diff --git a/checker/ref/19-transpiler.ref b/checker/ref/19-transpiler.ref
new file mode 100644
index 0000000..330994d
--- /dev/null
+++ b/checker/ref/19-transpiler.ref
@@ -0,0 +1,8 @@
+while (c >= 47)
+while (a > 25)
+while (d >= 87)
+while (d < 52)
+while (d > 61)
+while (c >= 67)
+while (d < 70)
+while (d < 39)
-- 
GitLab