[PATCH] D73474: [LLD][ELF][ARM] Do not insert interworking thunks for non STT_FUNC symbols
Fangrui Song via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jan 27 10:09:53 PST 2020
MaskRay added inline comments.
================
Comment at: lld/ELF/Arch/ARM.cpp:281
+ // Otherwise we need to interwork if STT_FUNC Symbol has bit 0 set (Thumb).
+ if (s.isFunc() && expr == R_PC && ((s.getVA() & 1) == 1))
return true;
----------------
`== 1` can be deleted. Can `s` be STT_GNU_IFUNC (`isGnuIFunc()`)?
================
Comment at: lld/ELF/Arch/ARM.cpp:292
+ // Otherwise we need to interwork if STT_FUNC Symbol has bit 0 clear (ARM).
+ if (expr == R_PLT_PC || (s.isFunc() && (s.getVA() & 1) == 0))
return true;
----------------
Can `s` be STT_GNU_IFUNC?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D73474/new/
https://reviews.llvm.org/D73474
More information about the llvm-commits
mailing list