aboutsummaryrefslogtreecommitdiff
path: root/test/_dragon.ssa
diff options
context:
space:
mode:
authorQuentin Carbonneaux <[email protected]>2016-03-27 15:00:45 -0400
committerQuentin Carbonneaux <[email protected]>2016-03-27 15:00:45 -0400
commit36635660b40573f6a0c19d50dfdd9277589030de (patch)
treea1b4463f7260462c314bd8d7cb35b3d199143f33 /test/_dragon.ssa
parentaad52241c88ad5327a8488c66dc906c8393c9c92 (diff)
extract tests out of src
Diffstat (limited to 'test/_dragon.ssa')
-rw-r--r--test/_dragon.ssa33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/_dragon.ssa b/test/_dragon.ssa
new file mode 100644
index 0000000..b169e1b
--- /dev/null
+++ b/test/_dragon.ssa
@@ -0,0 +1,33 @@
+# a moderately complex test for
+# dominators computation from
+# the dragon book
+# because branching is limited to
+# two, I had to split some blocks
+
+function $dragon() {
+@start
+@b1
+ jnz 0, @b2, @b3
+@b2
+ jmp @b3
+@b3
+ jmp @b4.1
+ jnz 0, @b3, @b4.2
+ jnz 0, @b5, @b6
+@b5
+ jmp @b7
+@b6
+ jmp @b7
+@b7
+ jnz 0, @b8.1, @b4.1
+ jnz 0, @b3, @b8.2
+ jnz 0, @b9, @b10
+@b9
+ jmp @b1
+@b10
+ jmp @b7
+}