diff options
author | jgravelle-google <jgravelle@google.com> | 2016-09-14 15:32:57 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-09-14 15:32:57 -0700 |
commit | 63b499e3ec9bbdf4e79ab6d9dc198299516e8aec (patch) | |
tree | 4da883c2fc51d75dcfc3ffee7e766cb5d8b68b94 /src/passes/DuplicateFunctionElimination.cpp | |
parent | ac078dcb1c677f83527693536cb1c06157095447 (diff) | |
download | binaryen-63b499e3ec9bbdf4e79ab6d9dc198299516e8aec.tar.gz binaryen-63b499e3ec9bbdf4e79ab6d9dc198299516e8aec.tar.bz2 binaryen-63b499e3ec9bbdf4e79ab6d9dc198299516e8aec.zip |
In AsmConstWalker, don't assume a segment exists (#697)
It's possible to generate an EM_ASM call with empty contents (due to
ifdefs, for example), and this gets converted to an empty string.
AsmConstWalker assumes that by this point any addresses it is pointing
to have a corresponding data section, which is reasonable. However in
the case of an empty string, we don't create a data section, but just
leave that address uninitialized, i.e. set to 0.
In the case of AsmConstWalker, a correct thing to do is to emit the
empty string as metadata, which becomes an empty emscripten_asm_v call.
Diffstat (limited to 'src/passes/DuplicateFunctionElimination.cpp')
0 files changed, 0 insertions, 0 deletions