summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/passes/O1.txt4
-rw-r--r--test/passes/simplify-globals-optimizing_enable-mutable-globals.txt13
-rw-r--r--test/passes/simplify-globals-optimizing_enable-mutable-globals.wast20
-rw-r--r--test/passes/simplify-globals_all-features.txt12
4 files changed, 44 insertions, 5 deletions
diff --git a/test/passes/O1.txt b/test/passes/O1.txt
index 1a63c5dbc..8c286d8e6 100644
--- a/test/passes/O1.txt
+++ b/test/passes/O1.txt
@@ -3,7 +3,9 @@
(memory $0 1 1)
(export "foo" (func $0))
(func $0 (result i32)
- (nop)
+ (drop
+ (i32.const 0)
+ )
(i32.load align=1
(i32.const 4)
)
diff --git a/test/passes/simplify-globals-optimizing_enable-mutable-globals.txt b/test/passes/simplify-globals-optimizing_enable-mutable-globals.txt
index 2876b4f37..fdb82e15d 100644
--- a/test/passes/simplify-globals-optimizing_enable-mutable-globals.txt
+++ b/test/passes/simplify-globals-optimizing_enable-mutable-globals.txt
@@ -41,7 +41,7 @@
(import "env" "global-1" (global $g1 i32))
(global $g2 i32 (global.get $g1))
(func $foo
- (nop)
+ (unreachable)
)
)
(module
@@ -160,3 +160,14 @@
(i32.const 100)
)
)
+(module
+ (type $none_=>_f64 (func (result f64)))
+ (global $global$0 i32 (i32.const 0))
+ (global $global$1 i32 (i32.const 0))
+ (export "func_9" (func $0))
+ (func $0 (result f64)
+ (drop
+ (unreachable)
+ )
+ )
+)
diff --git a/test/passes/simplify-globals-optimizing_enable-mutable-globals.wast b/test/passes/simplify-globals-optimizing_enable-mutable-globals.wast
index 91ef66ebf..152672385 100644
--- a/test/passes/simplify-globals-optimizing_enable-mutable-globals.wast
+++ b/test/passes/simplify-globals-optimizing_enable-mutable-globals.wast
@@ -126,3 +126,23 @@
(global.get $g1)
)
)
+;; don't remove a value with a side effect
+(module
+ (global $global$0 (mut i32) (i32.const 0))
+ (global $global$1 (mut i32) (i32.const 0))
+ (export "func_9" (func $0))
+ (func $0 (result f64)
+ (global.set $global$0
+ (block $label$1 (result i32)
+ (if
+ (i32.eqz
+ (global.get $global$1)
+ )
+ (unreachable)
+ )
+ (i32.const 2)
+ )
+ )
+ (f64.const 1)
+ )
+)
diff --git a/test/passes/simplify-globals_all-features.txt b/test/passes/simplify-globals_all-features.txt
index c851d67b5..9c1663b0a 100644
--- a/test/passes/simplify-globals_all-features.txt
+++ b/test/passes/simplify-globals_all-features.txt
@@ -41,7 +41,9 @@
(import "env" "global-1" (global $g1 i32))
(global $g2 i32 (global.get $g1))
(func $foo
- (nop)
+ (drop
+ (unreachable)
+ )
)
)
(module
@@ -203,7 +205,9 @@
(global.set $g1
(i32.const 100)
)
- (nop)
+ (drop
+ (local.get $x)
+ )
(i32.const 100)
)
)
@@ -230,6 +234,8 @@
(type $none_=>_none (func))
(global $write-only i32 (i32.const 1))
(func $foo
- (nop)
+ (drop
+ (i32.const 2)
+ )
)
)