[WebAssembly] Make __attribute__((used)) not imply export.
authorDan Gohman <dan433584@gmail.com>
Thu, 29 Aug 2019 22:40:00 +0000 (22:40 +0000)
committerDan Gohman <dan433584@gmail.com>
Thu, 29 Aug 2019 22:40:00 +0000 (22:40 +0000)
commitda84b688f9160bcd00ef46932e752aa33af94bc7
tree0b4589181fa40626e1847fbd32a29e1c174dd182
parent452e5647a5862599a679cf892777ff1ea45a6462
[WebAssembly] Make __attribute__((used)) not imply export.

Add an WASM_SYMBOL_NO_STRIP flag, so that __attribute__((used)) doesn't
need to imply exporting. When targeting Emscripten, have
WASM_SYMBOL_NO_STRIP imply exporting.

Differential Revision: https://reviews.llvm.org/D62542

llvm-svn: 370415
12 files changed:
llvm/include/llvm/BinaryFormat/Wasm.h
llvm/include/llvm/MC/MCSymbolWasm.h
llvm/include/llvm/MC/MCWasmObjectWriter.h
llvm/lib/MC/MCWasmObjectTargetWriter.cpp
llvm/lib/MC/MCWasmStreamer.cpp
llvm/lib/MC/WasmObjectWriter.cpp
llvm/lib/ObjectYAML/WasmYAML.cpp
llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyAsmBackend.cpp
llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
llvm/test/MC/WebAssembly/no-dead-strip.ll
llvm/tools/llvm-readobj/WasmDumper.cpp