[ARM] implement support for ALU/LDR PC-relative group relocations (details)
[ARM] implement support for ALU/LDR PC-relative group relocations
Currently, LLD does not support the complete set of ARM group relocations. Given that I intend to start using these in the Linux kernel , let's add support for these.
This implements the group processing as documented in the ELF psABI. Notably, this means support is dropped for very far symbol references that also carry a small component, where the immediate is rotated in such a way that only part of it wraps to the other end of the 32-bit word. To me, it seems unlikely that this is something anyone could be relying on, but of course I could be wrong.