diff options
author | Alon Zakai <alonzakai@gmail.com> | 2016-01-20 15:19:59 -0800 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2016-01-20 15:20:44 -0800 |
commit | 5f3c6cf04945591a2322238134172d7b68463b41 (patch) | |
tree | 0de0b674777964b2353c0e6a4bf7ead71db3535e /src/wasm-binary.h | |
parent | 8e44bc31fd60a51906123685976609fc2adf4382 (diff) | |
download | binaryen-5f3c6cf04945591a2322238134172d7b68463b41.tar.gz binaryen-5f3c6cf04945591a2322238134172d7b68463b41.tar.bz2 binaryen-5f3c6cf04945591a2322238134172d7b68463b41.zip |
mapLocals even if no locals, but there are params #127
Diffstat (limited to 'src/wasm-binary.h')
-rw-r--r-- | src/wasm-binary.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/wasm-binary.h b/src/wasm-binary.h index 76e5fc348..235a0e772 100644 --- a/src/wasm-binary.h +++ b/src/wasm-binary.h @@ -436,6 +436,7 @@ public: mappedLocals[name] = index + currLocalsByType[f64] - 1; continue; } + abort(); } } @@ -464,12 +465,14 @@ public: (BinaryConsts::Export * (wasm->exportsMap.count(name) > 0))); o << getFunctionTypeIndex(type); emitString(name.str); - if (function && function->locals.size() > 0) { + if (function) { mapLocals(function); - o << uint16_t(numLocalsByType[i32]) - << uint16_t(numLocalsByType[i64]) - << uint16_t(numLocalsByType[f32]) - << uint16_t(numLocalsByType[f64]); + if (function->locals.size() > 0) { + o << uint16_t(numLocalsByType[i32]) + << uint16_t(numLocalsByType[i64]) + << uint16_t(numLocalsByType[f32]) + << uint16_t(numLocalsByType[f64]); + } } if (function) { size_t sizePos = o.size(); |