summary refs log tree commit diff
diff options
context:
space:
mode:
authorQuentin Carbonneaux <quentin.carbonneaux@yale.edu>2015-08-07 20:28:21 -0400
committerQuentin Carbonneaux <quentin.carbonneaux@yale.edu>2015-09-15 23:01:30 -0400
commit83131357f7a15ee28208e41b1503937df34b99ba (patch)
tree8cc7c65761bbbcba1f339dbeea5184798fed785f
parentdcf07ba55c437b892f4a73a8e513d7adacdf0e2b (diff)
downloadroux-83131357f7a15ee28208e41b1503937df34b99ba.tar.gz
add very nice spilling stress test
-rw-r--r--lisc/test/spill2.ssa22
1 files changed, 22 insertions, 0 deletions
diff --git a/lisc/test/spill2.ssa b/lisc/test/spill2.ssa
new file mode 100644
index 0000000..b312295
--- /dev/null
+++ b/lisc/test/spill2.ssa
@@ -0,0 +1,22 @@
+# make sure comparisons
+# never get their two
+# operands in memory
+# run with NReg == 3, or
+# adapt it!
+
+@start
+	%a =w copy 0
+	%b =w copy 0
+
+@loop
+	%c =w phi @start 0, @loop %f
+	%d =w phi @start 0, @loop %g
+	%e =w phi @start 0, @loop %h
+	%f =w add %c, %d
+	%g =w add %c, %e
+	%h =w add %e, %d
+	%x =w csle %a, %b
+	jnz %x, @loop, @end
+@end
+	ret
+