summary refs log tree commit diff
path: root/lisc/test/loop.ssa
diff options
context:
space:
mode:
Diffstat (limited to 'lisc/test/loop.ssa')
-rw-r--r--lisc/test/loop.ssa19
1 files changed, 19 insertions, 0 deletions
diff --git a/lisc/test/loop.ssa b/lisc/test/loop.ssa
new file mode 100644
index 0000000..6fea1c6
--- /dev/null
+++ b/lisc/test/loop.ssa
@@ -0,0 +1,19 @@
+# simple looping program
+# sums all integers from 100 to 0
+
+
+@start
+	%n0 = copy 100
+	%s0 = copy 0
+
+@loop
+	%s  = phi %s0, %s1
+	%n  = phi %n0, %n1
+
+	%n1 = sub %n, 1
+	%s1 = add %s, %n
+
+	cnd %n1, @end, @loop
+
+@end
+	ret