[lld] [lld][ELF] Support relax R_LARCH_{ALIGN, PCALA_{HI20,LO12}, GOT_PC_{HI20,LO12}} (PR #78692)

Fangrui Song via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 30 19:18:53 PST 2024


MaskRay wrote:

> > For release/18.x, I think relaxing just `R_*_ALIGN` is safer. We need more time to think about GOT relaxation. Relaxing once may not converge when other features like RELR are involved. Can you split the patch?
> 
> I agree about the spliting. In addition, I think lld-18 needs to process `R_LARCH_{ADD,SUB}_ULEB128` as well because there may be such relocs in `.gcc_except_table` section when `A` and `B` are separated by alignment directives. (Both gcc and clang emit alignment directive before `for` loop).

Well, if it can't, it's largely due to GCC/binutils moving too fast on relaxation :( (which I warned long time ago).

https://github.com/llvm/llvm-project/pull/78692


More information about the llvm-commits mailing list