diff options
author | Alon Zakai <azakai@google.com> | 2021-01-21 22:09:47 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-21 14:09:47 -0800 |
commit | 3f4d3b3eff5d8112a9da3674a5f5eea696ca3c7d (patch) | |
tree | 30d3ddedf6ae2de10f56d6acea64f2b17640041b /src/wasm/wasm-validator.cpp | |
parent | 527e9f9ed76cee0baaa67e89569c282a3782be08 (diff) | |
download | binaryen-3f4d3b3eff5d8112a9da3674a5f5eea696ca3c7d.tar.gz binaryen-3f4d3b3eff5d8112a9da3674a5f5eea696ca3c7d.tar.bz2 binaryen-3f4d3b3eff5d8112a9da3674a5f5eea696ca3c7d.zip |
[GC] Add dataref type (#3500)
This is not 100% of everything, but is enough to get tests passing, which
includes full binary and text format support, getting all switches to compile
without error, and some additions to InstrumentLocals.
Diffstat (limited to 'src/wasm/wasm-validator.cpp')
-rw-r--r-- | src/wasm/wasm-validator.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/wasm/wasm-validator.cpp b/src/wasm/wasm-validator.cpp index 1557240bb..cc8a2bb56 100644 --- a/src/wasm/wasm-validator.cpp +++ b/src/wasm/wasm-validator.cpp @@ -1398,6 +1398,7 @@ void FunctionValidator::validateMemBytes(uint8_t bytes, case Type::exnref: case Type::anyref: case Type::eqref: + case Type::dataref: case Type::i31ref: case Type::none: WASM_UNREACHABLE("unexpected type"); @@ -2447,7 +2448,7 @@ void FunctionValidator::visitFunction(Function* curr) { } for (const auto& var : curr->vars) { features |= var.getFeatures(); - shouldBeTrue(var.isDefaultable(), curr, "vars must be defaultable"); + shouldBeTrue(var.isDefaultable(), var, "vars must be defaultable"); } shouldBeTrue(features <= getModule()->features, curr->name, @@ -2544,6 +2545,7 @@ void FunctionValidator::validateAlignment( case Type::exnref: case Type::anyref: case Type::eqref: + case Type::dataref: case Type::i31ref: case Type::none: WASM_UNREACHABLE("invalid type"); |