diff options
author | Sam Clegg <sbc@chromium.org> | 2021-01-19 14:29:05 -0800 |
---|---|---|
committer | Sam Clegg <sbc@chromium.org> | 2021-01-19 15:06:07 -0800 |
commit | 96ef4f307df27f4e0946eb344bac2703017ad073 (patch) | |
tree | 7a641ebbf72bd3ab9a49ff633ce5b9bd8896e6b2 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 0cd0eb6e0a8133ec86d884c1bbc9c3cbd1769c0b (diff) | |
download | llvm-96ef4f307df27f4e0946eb344bac2703017ad073.zip llvm-96ef4f307df27f4e0946eb344bac2703017ad073.tar.gz llvm-96ef4f307df27f4e0946eb344bac2703017ad073.tar.bz2 |
Revert "[WebAssembly] call_indirect issues table number relocs"
This reverts commit 418df4a6ab35d343cc0f2608c90a73dd9b8d0ab1.
This change broke emscripten tests, I believe because it started
generating 5-byte a wide table index in the call_indirect instruction.
Neither v8 nor wabt seem to be able to handle that. The spec
currently says that this is single 0x0 byte and:
"In future versions of WebAssembly, the zero byte occurring in the
encoding of the call_indirectcall_indirect instruction may be used to
index additional tables."
So we need to revisit this change. For backwards compat I guess
we need to guarantee that __indirect_function_table is always at
address zero. We could also consider making this a single-byte
relocation with and assert if have more than 127 tables (for now).
Differential Revision: https://reviews.llvm.org/D95005
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions