[PATCH] D42075: [WebAssembly] Symbol changes #1, LLVM

Nicholas Wilson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 15 08:50:33 PST 2018


ncw created this revision.
ncw added a reviewer: sbc100.
Herald added subscribers: llvm-commits, sunfish, aheejin, jgravelle-google, dschuff, jfb.

First chunk split out of https://reviews.llvm.org/D41954.

Must be committed simultaneously with LLD change, DXXX.

Changes:

- Get rid of DEBUG_FUNCTION_NAME symbols. When we actually debug data, maybe we'll want somewhere to put it... but having a symbol that just stores the name of another symbol seems odd. It means you have multiple Symbols with the same name, one containing the actual function and another containing the name!
- Store the names in a vector on the WasmObjectFile when reading them in. Also stash them on the WasmFunctions themselves. The names are //not// "symbol names" or aliases or anything, they're just the name that a debugger should show against the function body itself. NB. The WasmObjectFile stores them so that they can be exported in the YAML losslessly, and hence the tests can be precise.
- Don't bother to export names for things that aren't function bodies (ie don't export the names for imports). Affects test expectations.
- Enforce that the CODE section has been read in before reading the "names" section. Requires minor adjustment to some tests.


Repository:
  rL LLVM

https://reviews.llvm.org/D42075

Files:
  include/llvm/BinaryFormat/Wasm.h
  include/llvm/Object/Wasm.h
  lib/MC/WasmObjectWriter.cpp
  lib/Object/WasmObjectFile.cpp
  test/MC/WebAssembly/comdat.ll
  test/MC/WebAssembly/global-ctor-dtor.ll
  test/MC/WebAssembly/weak-alias.ll
  test/ObjectYAML/wasm/weak_symbols.yaml
  test/tools/llvm-nm/wasm/exports.yaml
  test/tools/llvm-nm/wasm/weak-symbols.yaml
  test/tools/llvm-objdump/WebAssembly/symbol-table.test
  test/tools/llvm-readobj/symbols.test
  tools/llvm-readobj/WasmDumper.cpp
  tools/obj2yaml/wasm2yaml.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D42075.129866.patch
Type: text/x-patch
Size: 17138 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180115/3a5dc720/attachment.bin>


More information about the llvm-commits mailing list