summaryrefslogtreecommitdiff
path: root/test/lit/merge
diff options
context:
space:
mode:
Diffstat (limited to 'test/lit/merge')
-rw-r--r--test/lit/merge/start3.wat24
-rw-r--r--test/lit/merge/start3.wat.second6
-rw-r--r--test/lit/merge/start3.wat.third4
3 files changed, 31 insertions, 3 deletions
diff --git a/test/lit/merge/start3.wat b/test/lit/merge/start3.wat
index ab4c555ab..9918d0164 100644
--- a/test/lit/merge/start3.wat
+++ b/test/lit/merge/start3.wat
@@ -13,9 +13,13 @@
;; CHECK: (export "user" (func $user))
-;; CHECK: (start $merged.start)
+;; CHECK: (start $merged.start.old)
;; CHECK: (func $start (type $none_=>_none)
+;; CHECK-NEXT: (local $x i32)
+;; CHECK-NEXT: (drop
+;; CHECK-NEXT: (local.get $x)
+;; CHECK-NEXT: )
;; CHECK-NEXT: (drop
;; CHECK-NEXT: (i32.const 1)
;; CHECK-NEXT: )
@@ -26,9 +30,23 @@
;; CHECK-NEXT: (call $start)
;; CHECK-NEXT: )
-;; CHECK: (func $merged.start (type $none_=>_none)
+;; CHECK: (func $merged.start.old (type $none_=>_none)
+;; CHECK-NEXT: (local $x i32)
+;; CHECK-NEXT: (block
+;; CHECK-NEXT: (drop
+;; CHECK-NEXT: (local.get $x)
+;; CHECK-NEXT: )
+;; CHECK-NEXT: (drop
+;; CHECK-NEXT: (i32.const 1)
+;; CHECK-NEXT: )
+;; CHECK-NEXT: )
+;; CHECK-NEXT: (call $merged.start.new)
+;; CHECK-NEXT: )
+
+;; CHECK: (func $merged.start.new (type $none_=>_none)
+;; CHECK-NEXT: (local $x f64)
;; CHECK-NEXT: (drop
-;; CHECK-NEXT: (i32.const 1)
+;; CHECK-NEXT: (local.get $x)
;; CHECK-NEXT: )
;; CHECK-NEXT: (drop
;; CHECK-NEXT: (i32.const 2)
diff --git a/test/lit/merge/start3.wat.second b/test/lit/merge/start3.wat.second
index ec66c2f5b..39090b56d 100644
--- a/test/lit/merge/start3.wat.second
+++ b/test/lit/merge/start3.wat.second
@@ -2,6 +2,12 @@
(start $start)
(func $start (export "start")
+ ;; Test that locals are handled properly. This function has an i32 local,
+ ;; and the other start has an f64 with the same name.
+ (local $x i32)
+ (drop
+ (local.get $x)
+ )
(drop
(i32.const 1)
)
diff --git a/test/lit/merge/start3.wat.third b/test/lit/merge/start3.wat.third
index 508ffdb2a..e4888b66e 100644
--- a/test/lit/merge/start3.wat.third
+++ b/test/lit/merge/start3.wat.third
@@ -2,6 +2,10 @@
(start $start)
(func $start
+ (local $x f64)
+ (drop
+ (local.get $x)
+ )
(drop
(i32.const 2)
)