diff options
author | Heejin Ahn <aheejin@gmail.com> | 2021-01-23 04:27:20 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-23 04:27:20 +0900 |
commit | 27a5a7101d20ce5fc51648e775587ab3d640114e (patch) | |
tree | bd8427f8b01a998d708847be0cfd08052b57a9ee /src/wasm/wasm-binary.cpp | |
parent | 69952a98c7c86286518d559958e35cd3639bd3a0 (diff) | |
download | binaryen-27a5a7101d20ce5fc51648e775587ab3d640114e.tar.gz binaryen-27a5a7101d20ce5fc51648e775587ab3d640114e.tar.bz2 binaryen-27a5a7101d20ce5fc51648e775587ab3d640114e.zip |
Reorder i31ref and dataref (#3509)
The binary spec
(https://docs.google.com/document/d/1yAWU3dbs8kUa_wcnnirDxUu9nEBsNfq0Xo90OWx6yuo/edit#)
lists `dataref` after `i31ref`, and `dataref` also comes after `i31ref`
in its binary code in the value-increasing order. This reorders these
two in wasm-type.h and other places, although in most of those places
the order is irrelevant.
This also adds C and JS API for `dataref`.
Diffstat (limited to 'src/wasm/wasm-binary.cpp')
-rw-r--r-- | src/wasm/wasm-binary.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/wasm/wasm-binary.cpp b/src/wasm/wasm-binary.cpp index 5a78bfc42..cc289e7ec 100644 --- a/src/wasm/wasm-binary.cpp +++ b/src/wasm/wasm-binary.cpp @@ -1413,12 +1413,12 @@ Type WasmBinaryBuilder::getType(int initial) { case BinaryConsts::EncodedType::nonnullable: // FIXME: for now, force all inputs to be nullable return Type(getHeapType(), Nullable); - case BinaryConsts::EncodedType::dataref: - // FIXME: for now, force all inputs to be nullable - return Type(HeapType::BasicHeapType::data, Nullable); case BinaryConsts::EncodedType::i31ref: // FIXME: for now, force all inputs to be nullable return Type(HeapType::BasicHeapType::i31, Nullable); + case BinaryConsts::EncodedType::dataref: + // FIXME: for now, force all inputs to be nullable + return Type(HeapType::BasicHeapType::data, Nullable); case BinaryConsts::EncodedType::rtt_n: { auto depth = getU32LEB(); auto heapType = getHeapType(); |