mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-11-24 06:10:12 +00:00
1cf2599a64
When linker relaxation is enabled on RISC-V, every branch has a relocation and a corresponding symbol in the symbol table. BOLT currently registers all these symbols as secondary entry points causing almost every function to be marked as multi entry on RISC-V. This patch modifies `adjustFunctionBoundaries` to ignore these symbols. Note that I currently try to detect them by checking if a symbol's name starts with the private label prefix as defined by `MCAsmInfo`. Since I'm not entirely sure what multi-entry functions look like on different targets, please check if this condition is correct. Maybe it could make sense to only check this on RISC-V? Reviewed By: maksfb Differential Revision: https://reviews.llvm.org/D159285 |
||
---|---|---|
.. | ||
AArch64 | ||
Inputs | ||
RISCV | ||
runtime | ||
Unit | ||
X86 | ||
bad-exe.test | ||
bolt-icf.test | ||
bolt-info.test | ||
cache+-deprecated.test | ||
CMakeLists.txt | ||
heatmap.test | ||
invalid-profile.test | ||
keep-aranges.test | ||
link_fdata.py | ||
lit.cfg.py | ||
lit.local.cfg | ||
lit.site.cfg.py.in | ||
max-funcs.test | ||
no-relocs.test | ||
non-empty-debug-line.test | ||
pie.test | ||
R_ABS.pic.lld.cpp | ||
re-optimize.test | ||
reorder-data-writable-ptload.c | ||
shared-object.test | ||
unreadable-profile.test | ||
yaml-profile-kind.c |