summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSam Clegg <sbc@chromium.org>2019-09-23 17:06:01 -0700
committerGitHub <noreply@github.com>2019-09-23 17:06:01 -0700
commitbf7e40f9bb3325b3f194de96a2b8602f2e5ca52c (patch)
tree3e4ea2c6b0187d09d0c1f7a3c9babfb92a194d15 /src
parentf5f53bb222c0d634ea3dcf9d73f645b582ba41c3 (diff)
downloadbinaryen-bf7e40f9bb3325b3f194de96a2b8602f2e5ca52c.tar.gz
binaryen-bf7e40f9bb3325b3f194de96a2b8602f2e5ca52c.tar.bz2
binaryen-bf7e40f9bb3325b3f194de96a2b8602f2e5ca52c.zip
wasm-emscripten-finalize: Add more checking of __data_end global (#2352)
Diffstat (limited to 'src')
-rw-r--r--src/tools/wasm-emscripten-finalize.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/tools/wasm-emscripten-finalize.cpp b/src/tools/wasm-emscripten-finalize.cpp
index 8a246e5d2..75744a822 100644
--- a/src/tools/wasm-emscripten-finalize.cpp
+++ b/src/tools/wasm-emscripten-finalize.cpp
@@ -197,6 +197,9 @@ int main(int argc, const char* argv[]) {
if (dataEnd->type != Type::i32) {
Fatal() << "__data_end global has wrong type";
}
+ if (dataEnd->imported()) {
+ Fatal() << "__data_end must not be an imported global";
+ }
Const* dataEndConst = dataEnd->init->cast<Const>();
dataSize = dataEndConst->value.geti32() - globalBase;
}