diff options
author | Fangrui Song <i@maskray.me> | 2021-02-17 23:33:13 -0800 |
---|---|---|
committer | Fangrui Song <i@maskray.me> | 2021-02-17 23:33:13 -0800 |
commit | 833d4d8e89e93636e904c3aa52a6c9c8d2ca098f (patch) | |
tree | 6243e6bbfe9e289b092feb19d73f798917fe6304 /llvm/lib/CodeGen/PrologEpilogInserter.cpp | |
parent | 018a484cd26d72fb4c9e7fd75e5f5bc7838dfc73 (diff) | |
download | llvm-833d4d8e89e93636e904c3aa52a6c9c8d2ca098f.zip llvm-833d4d8e89e93636e904c3aa52a6c9c8d2ca098f.tar.gz llvm-833d4d8e89e93636e904c3aa52a6c9c8d2ca098f.tar.bz2 |
[profile] Make {__start_,__stop_}__llvm_prf_* symbols undefined weak
To make a kind of metadata section usage work, we want to drop the
`__start_/__stop_ references retain C identifier name sections` rule from LLD (see D96914).
If an application has no `__llvm_prf_data` input section surviving --gc-sections,
LLD will error for undefined hidden `{__start_,__stop_}__llvm_prf_*` from `libclang_rt.profile-*`.
Other `__llvm_prf_*` sections have similar issues.
Making the references weak can address the problem.
This probably enables the opportunity to drop zero size dummy sections in `InstrProfilingPlatformLinux.c`.
Reviewed By: davidxl
Differential Revision: https://reviews.llvm.org/D96936
Diffstat (limited to 'llvm/lib/CodeGen/PrologEpilogInserter.cpp')
0 files changed, 0 insertions, 0 deletions