summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/passes/stack-check_enable-mutable-globals.txt22
-rw-r--r--test/passes/stack-check_enable-mutable-globals.wast10
2 files changed, 32 insertions, 0 deletions
diff --git a/test/passes/stack-check_enable-mutable-globals.txt b/test/passes/stack-check_enable-mutable-globals.txt
index c89f112a8..3f8aa4da7 100644
--- a/test/passes/stack-check_enable-mutable-globals.txt
+++ b/test/passes/stack-check_enable-mutable-globals.txt
@@ -39,3 +39,25 @@
)
)
)
+(module
+ (type $i32_i32_=>_none (func (param i32 i32)))
+ (type $none_=>_i32 (func (result i32)))
+ (import "env" "__stack_pointer" (global $sp (mut i32)))
+ (global $__stack_base (mut i32) (i32.const 0))
+ (global $__stack_limit (mut i32) (i32.const 0))
+ (global $__stack_base_0 (mut i32) (i32.const 0))
+ (global $__stack_limit_0 (mut i32) (i32.const 0))
+ (export "use_stack" (func $0))
+ (export "__set_stack_limits" (func $__set_stack_limits))
+ (func $0 (result i32)
+ (unreachable)
+ )
+ (func $__set_stack_limits (param $0 i32) (param $1 i32)
+ (global.set $__stack_base_0
+ (local.get $0)
+ )
+ (global.set $__stack_limit_0
+ (local.get $1)
+ )
+ )
+)
diff --git a/test/passes/stack-check_enable-mutable-globals.wast b/test/passes/stack-check_enable-mutable-globals.wast
index 3028039fd..c3583cd2c 100644
--- a/test/passes/stack-check_enable-mutable-globals.wast
+++ b/test/passes/stack-check_enable-mutable-globals.wast
@@ -5,3 +5,13 @@
(global.get $sp)
)
)
+;; if the global names are taken we should not crash
+(module
+ (import "env" "__stack_pointer" (global $sp (mut i32)))
+ (global $__stack_base (mut i32) (i32.const 0))
+ (global $__stack_limit (mut i32) (i32.const 0))
+ (export "use_stack" (func $0))
+ (func $0 (result i32)
+ (unreachable)
+ )
+)