llvm-project
6be4670d - [ELF] Consistently use gotEntrySize for GOT entries (#142064)

Commit
197 days ago
[ELF] Consistently use gotEntrySize for GOT entries (#142064) d62413452fc6 ("[lld][X86] Restore gotEntrySize.") (re-)introduced gotEntrySize and used it for various GOT calculations, but was not exhaustive (nor consistent; Symbol::getGotOffset was modified but not GotSection::finalizeContents, so we undercompute the size, on top of computing the wrong offsets for TLS), and since then even more uses have been added that use wordsize instead of gotEntrySize (presumably due to looking at the existing incorrect ones). This doesn't really matter upstream, as the only architecture where the two differ is X32, and from looking at the code it's not properly supported (e.g. TLS relaxation assumes LP64 sequences), but downstream in CHERI LLVM it does matter, as CHERI's pointers are more than just an integer address (a machine word). Note this ignores the special MipsGotSection; on MIPS, wordsize and gotEntrySize are the same, CHERI-MIPS is no longer something we support downstream and even when we did we didn't reuse that implementation.
Author
Parents
Loading