aboutsummaryrefslogtreecommitdiff
path: root/test/logical-or.qbe
diff options
context:
space:
mode:
Diffstat (limited to 'test/logical-or.qbe')
-rw-r--r--test/logical-or.qbe38
1 files changed, 38 insertions, 0 deletions
diff --git a/test/logical-or.qbe b/test/logical-or.qbe
new file mode 100644
index 0000000..e1025c9
--- /dev/null
+++ b/test/logical-or.qbe
@@ -0,0 +1,38 @@
+export
+function w $main() {
+@start.1
+@body.2
+ %.1 =w loadw $i
+ jnz %.1, @logic_join.4, @logic_right.3
+@logic_right.3
+@logic_join.4
+ %.2 =w phi @body.2 1, @logic_right.3 0
+ jnz %.2, @if_true.5, @if_false.6
+@if_true.5
+ ret 1
+@if_false.6
+ %.3 =s loads $f
+ %.4 =w cnes %.3, s_0
+ jnz %.4, @logic_join.8, @logic_right.7
+@logic_right.7
+@logic_join.8
+ %.5 =w phi @if_false.6 1, @logic_right.7 0
+ jnz %.5, @if_true.9, @if_false.10
+@if_true.9
+ ret 1
+@if_false.10
+ %.6 =l loadl $p
+ %.7 =w cnel %.6, 0
+ jnz %.7, @logic_join.12, @logic_right.11
+@logic_right.11
+@logic_join.12
+ %.8 =w phi @if_false.10 1, @logic_right.11 0
+ jnz %.8, @if_true.13, @if_false.14
+@if_true.13
+ ret 1
+@if_false.14
+ ret 0
+}
+export data $i = align 4 { z 4 }
+export data $f = align 4 { z 4 }
+export data $p = align 8 { z 8 }