mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 04:02:41 +01:00
a340589458
Use a combination of !associated, comdat, @llvm.compiler.used and custom sections to allow dead stripping of globals and their asan metadata. Sometimes. Currently this works on LLD, which supports SHF_LINK_ORDER with sh_link pointing to the associated section. This also works on BFD, which seems to treat comdats as all-or-nothing with respect to linker GC. There is a weird quirk where the "first" global in each link is never GC-ed because of the section symbols. At this moment it does not work on Gold (as in the globals are never stripped). This is a re-land of r298158 rebased on D31358. This time, asan.module_ctor is put in a comdat as well to avoid quadratic behavior in Gold. llvm-svn: 299697 |
||
---|---|---|
.. | ||
InstCombine | ||
IPO | ||
Scalar | ||
Utils | ||
Vectorize | ||
Coroutines.h | ||
GCOVProfiler.h | ||
InstrProfiling.h | ||
Instrumentation.h | ||
IPO.h | ||
ObjCARC.h | ||
PGOInstrumentation.h | ||
SampleProfile.h | ||
Scalar.h | ||
Vectorize.h |