Changes from Git (git http://labmaster3.local/git/llvm-project.git)


  1. [lld][RISCV] Print error when encountering R_RISCV_ALIGN (details)
Commit d1da63664f4e42191daf2e6a9fa682ca9f75ef5e by jrtc27
[lld][RISCV] Print error when encountering R_RISCV_ALIGN
Summary: Unlike R_RISCV_RELAX, which is a linker hint, R_RISCV_ALIGN
requires the support of the linker even when ignoring all R_RISCV_RELAX
relocations. This is because the compiler emits as many NOPs as may be
required for the requested alignment, more than may be required
pre-relaxation, to allow for the target becoming more unaligned after
relaxing earlier sequences. This means that the target is often not
initially aligned in the object files, and so the R_RISCV_ALIGN
relocations cannot just be ignored. Since we do not support linker
relaxation, we must turn these into errors.
Reviewers: ruiu, MaskRay, espindola
Reviewed By: MaskRay
Subscribers: grimar, Jim, emaste, arichardson, asb, rbar, johnrusso,
simoncook, sabuasal, niosHD, kito-cheng, shiva0217, zzheng,
edward-jones, rogfer01, MartinMosbeck, brucehoult, the_o, rkruppe, PkmX,
jocewei, psnobl, benna, lenary, s.egerton, pzheng, sameer.abuasal,
apazos, luismarques, llvm-commits
Tags: #llvm
Differential Revision:
The file was addedlld/test/ELF/riscv-reloc-align.s
The file was modifiedlld/ELF/Arch/RISCV.cpp