llvm-project
c04b00de - [ELF] Add target-specific relocation scanning for ARM (#182440)

Commit
63 days ago
[ELF] Add target-specific relocation scanning for ARM (#182440) Implement ARM::scanSectionImpl, following the pattern established for AArch64 and other targets. This merges the getRelExpr and TLS handling for SHF_ALLOC sections into the target-specific scanner, enabling devirtualization and eliminating abstraction overhead. - Inline relocation classification into scanSectionImpl with a switch on relocation type, replacing the generic rs.scan() path. - Use processR_PC/processR_PLT_PC for common PC-relative and PLT relocations. - Handle TLS inline: checkTlsLe for TLS LE, handleTlsIe<false> for TLS IE (no IE-to-LE optimization for ARM), and direct flag/reloc emission for TLS GD/LD (no GD/LD optimization for ARM). - Set hasGotOffRel for R_GOTREL/R_GOTONLY_PC relocations. - Simplify getRelExpr to only handle relocations needed by relocateNonAlloc and preprocessRelocs.
Author
Parents
Loading