[lld-macho][nfc] Refactor to accommodate paired relocs
authorGreg McGary <gkm@fb.com>
Wed, 14 Oct 2020 16:49:54 +0000 (09:49 -0700)
committerGreg McGary <gkm@fb.com>
Fri, 18 Dec 2020 04:21:41 +0000 (20:21 -0800)
commitd4ec3346b1baf31819d20a8950ced8be8f66a408
treec450cde0a1f751fd13107d44bfae3c6477146e4b
parented6a135246f01eb7a52bbe321a0b4de1d40b513d
[lld-macho][nfc] Refactor to accommodate paired relocs

This is a refactor to pave the way for supporting paired-ADDEND for ARM64. The only paired reloc type for X86_64 is SUBTRACTOR. In a later diff, I will add SUBTRACTOR for both X86_64 and ARM64.

* s/`getImplicitAddend`/`getAddend`/ because it handles all forms of addend: implicit, explicit, paired.
* add predicate `bool isPairedReloc()`
* check range of `relInfo.r_symbolnum` is internal, unrelated to user-input, so use `assert()`, not `error()`
* minor cleanups & rearrangements in `InputFile::parseRelocations()`

Differential Revision: https://reviews.llvm.org/D90614
lld/MachO/Arch/X86_64.cpp
lld/MachO/InputFiles.cpp
lld/MachO/Target.h