[PATCH] D71711: [COFF] Make the autogenerated .weak.<name>.default symbols static

Martin Storsjö via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Dec 29 15:07:21 PST 2019


mstorsjo added a comment.

In D71711#1798098 <https://reviews.llvm.org/D71711#1798098>, @mstorsjo wrote:

> Are there any other options then, than trying to do what GCC/binutils does, by changing the suffix `.default` into something that more hopefully is unique? They use the name of another defined (probably non-comdat) external symbol from the same object (that should be unique) as suffix. But that feels like a much larger mess to implement.
>
> FWIW, right now this is blocking me from llvm with clang itself for mingw targets, since we started using an external thread_local variable.


Making lld more lenient with multiple object files with the same default absolute symbol for the address zero should fix the primary issue wrt the TLS initializer function (although I haven't tried rebuilding everything with that in place), which I implemented in D71981 <https://reviews.llvm.org/D71981>. Implementing something similar to binutils with making unique names for the weak default symbols would still be nice though.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D71711/new/

https://reviews.llvm.org/D71711





More information about the llvm-commits mailing list