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

Alexandre Ganea via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 15 15:41:52 PDT 2022


aganea added a comment.

I've posted an alternate implementation, please see D123879 <https://reviews.llvm.org/D123879>:

> The main differences are:
>
> - LLD_THREAD_SAFE_MEMORY was removed
> - AllocContext is always thread-local.
> - Using llvm::sys::ThreadLocal to make TLS allocation dynamic at runtime. This is to accommodate for several instances of CommonLinkerContext running concurrently.
> - No "safe" or "perThread" functions, the APIs remain the same as before.
>
> I did not see any divergence in performance (on Windows) when using a two-stage LLD, built with -DLLVM_INTEGRATED_CRT_ALLOC=rpmalloc, with ThinLTO & -march=native.




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