[PATCH] D110450: [LLD] Remove global state in lld/COFF

Alexandre Ganea via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 26 11:53:00 PST 2022


aganea added a comment.

In D110450#3273360 <https://reviews.llvm.org/D110450#3273360>, @MaskRay wrote:

> `thread_local` performance is fine on aarch64 but has a higher cost (hidden visibility doesn't help) on other architectures (especially x86-64 which many people are concerned) because llvm-project compiles lld files with `-fPIC` which uses traditional GD/LD TLS models which are slow:(

It isn't particularly cheap on the Windows ABI either: https://godbolt.org/z/frEe87zcq - however I/O dominates in LLD right now, so using `thread_local` for `ctx` doesn't really change the runtime performance of LLD, at least on Windows/x64: https://reviews.llvm.org/D108850?id=370678#2975472


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D110450



More information about the llvm-commits mailing list