diff options
Diffstat (limited to 'src/wasm/wasm-binary.cpp')
-rw-r--r-- | src/wasm/wasm-binary.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/wasm/wasm-binary.cpp b/src/wasm/wasm-binary.cpp index 7b88bdd76..924bf1601 100644 --- a/src/wasm/wasm-binary.cpp +++ b/src/wasm/wasm-binary.cpp @@ -285,6 +285,9 @@ void WasmBinaryWriter::writeTypes() { o << U32LEB(0); } } + if (type.isShared()) { + o << S32LEB(BinaryConsts::EncodedType::Shared); + } if (type.isSignature()) { o << S32LEB(BinaryConsts::EncodedType::Func); auto sig = type.getSignature(); @@ -2391,6 +2394,10 @@ void WasmBinaryReader::readTypes() { } form = getS32LEB(); } + if (form == BinaryConsts::Shared) { + builder[i].setShared(); + form = getS32LEB(); + } if (form == BinaryConsts::EncodedType::Func) { builder[i] = readSignatureDef(); } else if (form == BinaryConsts::EncodedType::Cont) { |