forked from OSchip/llvm-project
04c3040f41
`__llvm_prf_vnodes` and `__llvm_prf_names` are used by runtime but not referenced via relocation in the translation unit. With `-z start-stop-gc` (D96914 https://sourceware.org/bugzilla/show_bug.cgi?id=27451), the linker no longer lets `__start_/__stop_` references retain them. Place `__llvm_prf_vnodes` and `__llvm_prf_names` in `llvm.used` to make them retained by the linker. This patch changes most existing `UsedVars` cases to `CompilerUsedVars` to reflect the ideal state - if the binary format properly supports section based GC (dead stripping), `llvm.compiler.used` should be sufficient. `__llvm_prf_vnodes` and `__llvm_prf_names` are switched to `UsedVars` since we want them to be unconditionally retained by both compiler and linker. Behaviors on other COFF/Mach-O are not affected. Differential Revision: https://reviews.llvm.org/D97649 |
||
---|---|---|
.. | ||
BlocksRuntime | ||
asan | ||
builtins | ||
cfi | ||
crt | ||
dfsan | ||
fuzzer | ||
gwp_asan | ||
hwasan | ||
interception | ||
lsan | ||
memprof | ||
msan | ||
profile | ||
safestack | ||
sanitizer_common | ||
scudo | ||
shadowcallstack | ||
tsan | ||
ubsan | ||
ubsan_minimal | ||
xray | ||
.clang-format | ||
.clang-tidy | ||
CMakeLists.txt | ||
lit.common.cfg.py | ||
lit.common.configured.in |