aboutsummaryrefslogtreecommitdiff
path: root/libcxx/src/filesystem/operations.cpp
diff options
context:
space:
mode:
authorPetr Hosek <phosek@google.com>2019-07-13 14:02:07 -0700
committerPetr Hosek <phosek@google.com>2021-02-02 23:19:51 -0800
commit97ba5cde52664200819446c1a18de28faf2ed1c6 (patch)
tree2fdc38260ac12b5e0b58b0a79fa3ef67b4d3577a /libcxx/src/filesystem/operations.cpp
parent511c9a76fb98efda5019b4e6d07bea395ce1df78 (diff)
downloadllvm-97ba5cde52664200819446c1a18de28faf2ed1c6.zip
llvm-97ba5cde52664200819446c1a18de28faf2ed1c6.tar.gz
llvm-97ba5cde52664200819446c1a18de28faf2ed1c6.tar.bz2
[InstrProfiling] Use !associated metadata for counters, data and values
C identifier name input sections such as __llvm_prf_* are GC roots so they cannot be discarded. In LLD, the SHF_LINK_ORDER flag overrides the C identifier name semantics. The !associated metadata may be attached to a global object declaration with a single argument that references another global object, and it gets lowered to SHF_LINK_ORDER flag. When a function symbol is discarded by the linker, setting up !associated metadata allows linker to discard counters, data and values associated with that function symbol. Note that !associated metadata is only supported by ELF, it does not have any effect on non-ELF targets. Differential Revision: https://reviews.llvm.org/D76802
Diffstat (limited to 'libcxx/src/filesystem/operations.cpp')
0 files changed, 0 insertions, 0 deletions