summaryrefslogtreecommitdiff
path: root/test/passes/i64-to-i32-lowering.txt
diff options
context:
space:
mode:
Diffstat (limited to 'test/passes/i64-to-i32-lowering.txt')
-rw-r--r--test/passes/i64-to-i32-lowering.txt62
1 files changed, 62 insertions, 0 deletions
diff --git a/test/passes/i64-to-i32-lowering.txt b/test/passes/i64-to-i32-lowering.txt
new file mode 100644
index 000000000..5d5dbe850
--- /dev/null
+++ b/test/passes/i64-to-i32-lowering.txt
@@ -0,0 +1,62 @@
+(module
+ (type $FUNCSIG$j (func (result i32)))
+ (import "env" "func" (func $import (result i32)))
+ (global $i64toi32_i32$HIGH_BITS (mut i32) (i32.const 0))
+ (func $defined (; 1 ;) (type $FUNCSIG$j) (result i32)
+ (local $i64toi32_i32$0 i32)
+ (local $i64toi32_i32$1 i32)
+ (local $i64toi32_i32$2 i32)
+ (local $i64toi32_i32$3 i32)
+ (local $i64toi32_i32$4 i32)
+ (local $i64toi32_i32$5 i32)
+ (set_local $i64toi32_i32$2
+ (block (result i32)
+ (set_local $i64toi32_i32$2
+ (block (result i32)
+ (set_local $i64toi32_i32$0
+ (i32.const 0)
+ )
+ (i32.const 1)
+ )
+ )
+ (set_local $i64toi32_i32$3
+ (block (result i32)
+ (set_local $i64toi32_i32$1
+ (i32.const 0)
+ )
+ (i32.const 2)
+ )
+ )
+ (set_local $i64toi32_i32$4
+ (i32.add
+ (get_local $i64toi32_i32$2)
+ (get_local $i64toi32_i32$3)
+ )
+ )
+ (set_local $i64toi32_i32$5
+ (i32.add
+ (get_local $i64toi32_i32$0)
+ (get_local $i64toi32_i32$1)
+ )
+ )
+ (if
+ (i32.lt_u
+ (get_local $i64toi32_i32$4)
+ (get_local $i64toi32_i32$3)
+ )
+ (set_local $i64toi32_i32$5
+ (i32.add
+ (get_local $i64toi32_i32$5)
+ (i32.const 1)
+ )
+ )
+ )
+ (get_local $i64toi32_i32$4)
+ )
+ )
+ (set_global $i64toi32_i32$HIGH_BITS
+ (get_local $i64toi32_i32$5)
+ )
+ (get_local $i64toi32_i32$2)
+ )
+)