[PATCH] D122922: [lld][common][lld-macho][lld-coff] Support per-thread allocators and StringSavers

Fangrui Song via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 11 21:04:56 PDT 2022


MaskRay added a comment.

In the `LLD_THREAD_SAFE_MEMORY` code path, `make<Foo>(...)` now has significantly larger overhead due to the `pthread_getspecific` call (via `llvm/Support/ThreadLocal.h`).
A large number of `make<...>` instantiations in lld do not benefit from per-thread allocation.
So my thought (I mentioned this somewhere) is that we introduce a new `make` utility, let the few that actually benefit use it, instead of hijacking all `make<...>` to be pure per-thread.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D122922



More information about the llvm-commits mailing list