diff options
-rw-r--r-- | src/wasm-validator.h | 7 | ||||
-rw-r--r-- | test/passes/vacuum.txt | 16 | ||||
-rw-r--r-- | test/passes/vacuum.wast | 6 |
3 files changed, 13 insertions, 16 deletions
diff --git a/src/wasm-validator.h b/src/wasm-validator.h index 3616313d3..3c580ce51 100644 --- a/src/wasm-validator.h +++ b/src/wasm-validator.h @@ -303,12 +303,7 @@ public: } void visitDrop(Drop* curr) { - // TODO: assert on this, when tests pass - if (getenv("BINARYEN_WARN_DROP")) { - if (!(isConcreteWasmType(curr->value->type) || curr->value->type == unreachable)) { - std::cerr << "warning: bad drop " << curr << " in " << (getFunction() ? getFunction()->name : Name("?")) << '\n'; - } - } + shouldBeTrue(isConcreteWasmType(curr->value->type) || curr->value->type == unreachable, curr, "can only drop a valid value"); } void visitReturn(Return* curr) { diff --git a/test/passes/vacuum.txt b/test/passes/vacuum.txt index 2639dee5d..0c2feeb09 100644 --- a/test/passes/vacuum.txt +++ b/test/passes/vacuum.txt @@ -145,17 +145,17 @@ ) (func $if-drop (type $3) (result i32) (block $out - (drop - (if - (call $if-drop) + (if + (call $if-drop) + (drop (call $int) - (br $out) ) + (br $out) ) - (drop - (if - (call $if-drop) - (br $out) + (if + (call $if-drop) + (br $out) + (drop (call $int) ) ) diff --git a/test/passes/vacuum.wast b/test/passes/vacuum.wast index 9095a40f4..05a8611c5 100644 --- a/test/passes/vacuum.wast +++ b/test/passes/vacuum.wast @@ -302,13 +302,15 @@ (func $if-drop (result i32) (block $out (drop - (if (call $if-drop) + (if i32 + (call $if-drop) (call $int) (br $out) ) ) (drop - (if (call $if-drop) + (if i32 + (call $if-drop) (br $out) (call $int) ) |