aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authormengqinggang <mengqinggang@loongson.cn>2024-01-26 10:50:57 +0000
committerNick Clifton <nickc@redhat.com>2024-01-26 10:50:57 +0000
commit3988bf614f9f8761f51a5c7922977a60cb8402ff (patch)
tree18961c4432b3c0d7f1c58c902a3b4eed5b1fddfd /bfd
parent75558017d5ee7c6f99fb3e68ea709744f0c3501e (diff)
downloadgdb-3988bf614f9f8761f51a5c7922977a60cb8402ff.zip
gdb-3988bf614f9f8761f51a5c7922977a60cb8402ff.tar.gz
gdb-3988bf614f9f8761f51a5c7922977a60cb8402ff.tar.bz2
Backport commits 969f5c0e1 (LoongArch: gas: Add support for s9 register) and a0aa6f4ab (LoongArch: ld: Add support for TLS LE symbol with addend) to 2.42 branch.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/elfnn-loongarch.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/bfd/elfnn-loongarch.c b/bfd/elfnn-loongarch.c
index 64ccc55..4035ea2 100644
--- a/bfd/elfnn-loongarch.c
+++ b/bfd/elfnn-loongarch.c
@@ -3496,14 +3496,12 @@ loongarch_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info,
relocation += rel->r_addend;
RELOCATE_CALC_PC32_HI20 (relocation, pc);
-
break;
case R_LARCH_TLS_LE_HI20_R:
+ relocation += rel->r_addend;
relocation -= elf_hash_table (info)->tls_sec->vma;
-
RELOCATE_TLS_TP32_HI20 (relocation);
-
break;
case R_LARCH_PCALA_LO12:
@@ -3684,6 +3682,7 @@ loongarch_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info,
case R_LARCH_TLS_LE64_HI12:
BFD_ASSERT (resolved_local && elf_hash_table (info)->tls_sec);
+ relocation += rel->r_addend;
relocation -= elf_hash_table (info)->tls_sec->vma;
break;