Because the binutils of the loongarch architecture adds relaxation support [1], 
the next version of binutils will not be able to build grub.

So we added the R_LARCH_B16, R_LARCH_B21 and R_LARCH_RELAX relocations to 
enhance grub compatibility.

[1]: 
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=56576f4a722b7398d35802ecf7d4185c27d6d69b

v1->v2:
- split patch
- drop cast code

Xiaotian Wu (5):
  Use the correct format specifier for formatted output
  loongarch: Optimize code using pc variable
  loongarch: Rename function names
  loongarch: Add ELF relocation types documentation and comments
  loongarch: Add relaxation support

 grub-core/kern/arm64/dl_helper.c       |  4 +-
 grub-core/kern/loongarch64/dl.c        | 21 +++++++-
 grub-core/kern/loongarch64/dl_helper.c | 72 ++++++++++++++++++++++++--
 include/grub/elf.h                     |  3 ++
 include/grub/loongarch64/reloc.h       |  6 ++-
 util/grub-mkimagexx.c                  | 28 ++++++++--
 util/grub-module-verifier.c            |  3 ++
 7 files changed, 124 insertions(+), 13 deletions(-)

-- 
2.20.1


_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to