summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/passes/inlining_all-features.txt12
-rw-r--r--test/passes/inlining_all-features.wast11
2 files changed, 23 insertions, 0 deletions
diff --git a/test/passes/inlining_all-features.txt b/test/passes/inlining_all-features.txt
index b2f483d3d..2141d3d34 100644
--- a/test/passes/inlining_all-features.txt
+++ b/test/passes/inlining_all-features.txt
@@ -47,3 +47,15 @@
)
)
)
+(module
+ (type $none_=>_i32 (func (result i32)))
+ (global $global$0 (mut funcref) (ref.func $0))
+ (func $0 (result i32)
+ (i32.const 1337)
+ )
+ (func $1 (result i32)
+ (block $__inlined_func$0 (result i32)
+ (i32.const 1337)
+ )
+ )
+)
diff --git a/test/passes/inlining_all-features.wast b/test/passes/inlining_all-features.wast
index 47ac3ddb9..f86ad8926 100644
--- a/test/passes/inlining_all-features.wast
+++ b/test/passes/inlining_all-features.wast
@@ -36,3 +36,14 @@
)
)
)
+(module
+ ;; a function reference in a global's init should be noticed, and prevent us
+ ;; from removing an inlined function
+ (global $global$0 (mut funcref) (ref.func $0))
+ (func $0 (result i32)
+ (i32.const 1337)
+ )
+ (func $1 (result i32)
+ (call $0)
+ )
+)