[PATCH] D26722: [WebAssembly] Add skeleton MC support for the Wasm container format

Peter Collingbourne via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Dec 5 19:39:07 PST 2016


pcc added inline comments.


================
Comment at: lib/MC/WasmObjectWriter.cpp:130
+
+  // The presence of symbol versions causes undefined symbols and
+  // versions declared with @@@ to be renamed.
----------------
sunfish wrote:
> pcc wrote:
> > Same here: is symbol versioning a necessary feature of the wasm object format?
> Symbol versioning is desirable functionality. We don't have to do it like ELF does, but that seemed like a reasonable place to start. Are you aware of similar bugs involving ELF symbol versioning?
Not specifically bugs of that kind, but bear in mind that symbol versioning as implemented in ELF is rather complex and requires co-operation from the linker and the dynamic loader, so I'd imagine that an implementation that uses `.symver` would require spec changes, and if you're going to make a spec change you might want to consider a simpler design first.

For example, you might consider just having version numbers rather than names, and letting the versions be symbol attributes rather than being represented using aliases.


Repository:
  rL LLVM

https://reviews.llvm.org/D26722





More information about the llvm-commits mailing list