summaryrefslogtreecommitdiff
path: root/test/debugInfo.fromasm.imprecise
diff options
context:
space:
mode:
Diffstat (limited to 'test/debugInfo.fromasm.imprecise')
-rw-r--r--test/debugInfo.fromasm.imprecise152
1 files changed, 145 insertions, 7 deletions
diff --git a/test/debugInfo.fromasm.imprecise b/test/debugInfo.fromasm.imprecise
index 5533d4cae..4919d624d 100644
--- a/test/debugInfo.fromasm.imprecise
+++ b/test/debugInfo.fromasm.imprecise
@@ -7,34 +7,45 @@
(export "add" (func $add))
(export "ret" (func $ret))
(export "opts" (func $opts))
+ (export "fib" (func $fib))
+ (export "switch_reach" (func $switch_reach))
(func $add (param $0 i32) (param $1 i32) (result i32)
+ ;; tests/other_file.cpp:314159
(i32.add
(get_local $1)
(get_local $1)
)
)
(func $ret (param $0 i32) (result i32)
- (i32.add
+ ;; return.cpp:50
+ (set_local $0
(i32.shl
(get_local $0)
(i32.const 1)
)
+ )
+ ;; return.cpp:100
+ (i32.add
+ (get_local $0)
(i32.const 1)
)
)
(func $opts (param $0 i32) (param $1 i32) (result i32)
+ ;; even-opted.cpp:1
+ (set_local $0
+ (i32.add
+ (get_local $0)
+ (get_local $1)
+ )
+ )
;; even-opted.cpp:2
(set_local $1
(i32.shr_s
(get_local $1)
- (tee_local $0
- (i32.add
- (get_local $0)
- (get_local $1)
- )
- )
+ (get_local $0)
)
)
+ ;; even-opted.cpp:3
(i32.add
(i32.rem_s
(get_local $0)
@@ -43,4 +54,131 @@
(get_local $1)
)
)
+ (func $fib (param $0 i32) (result i32)
+ (local $1 i32)
+ (local $2 i32)
+ (local $3 i32)
+ (local $4 i32)
+ (if
+ ;; fib.c:3
+ (i32.gt_s
+ (get_local $0)
+ (i32.const 0)
+ )
+ (block
+ (set_local $4
+ (i32.const 0)
+ )
+ (set_local $2
+ (i32.const 0)
+ )
+ (set_local $3
+ (i32.const 1)
+ )
+ )
+ (block
+ (set_local $1
+ (i32.const 1)
+ )
+ ;; fib.c:8
+ (return
+ (get_local $1)
+ )
+ )
+ )
+ (loop $while-in
+ ;; fib.c:4
+ (set_local $1
+ (i32.add
+ (get_local $3)
+ (get_local $4)
+ )
+ )
+ ;; fib.c:3
+ (set_local $2
+ (i32.add
+ (get_local $2)
+ (i32.const 1)
+ )
+ )
+ (if
+ ;; fib.c:3
+ (i32.ne
+ (get_local $2)
+ (get_local $0)
+ )
+ (block
+ (set_local $4
+ (get_local $3)
+ )
+ (set_local $3
+ (get_local $1)
+ )
+ (br $while-in)
+ )
+ )
+ )
+ ;; fib.c:8
+ (get_local $1)
+ )
+ (func $switch_reach (param $0 i32) (result i32)
+ (local $1 i32)
+ (set_local $1
+ (block $__rjto$0 i32
+ (block $__rjti$0
+ (br $__rjto$0
+ (if i32
+ (i32.lt_s
+ (tee_local $1
+ (i32.add
+ (get_local $0)
+ (i32.const 52)
+ )
+ )
+ (i32.const 1369188723)
+ )
+ (block $switch i32
+ (block $switch-default
+ (block $switch-case
+ (br_table $switch-case $switch-default
+ (i32.sub
+ (get_local $1)
+ (i32.const -1108210269)
+ )
+ )
+ )
+ (br $__rjti$0)
+ )
+ (i32.const 0)
+ )
+ (block $switch0 i32
+ (block $switch-default2
+ (block $switch-case1
+ (br_table $switch-case1 $switch-default2
+ (i32.sub
+ (get_local $1)
+ (i32.const 1369188723)
+ )
+ )
+ )
+ (br $__rjti$0)
+ )
+ (i32.const 0)
+ )
+ )
+ )
+ )
+ (call $switch_reach
+ (get_local $0)
+ )
+ )
+ )
+ (drop
+ (call $switch_reach
+ (get_local $0)
+ )
+ )
+ ;; /tmp/emscripten_test_binaryen2_28hnAe/src.c:59950
+ (get_local $1)
+ )
)