aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormengqinggang <mengqinggang@loongson.cn>2023-11-16 19:19:15 +0800
committerliuzhensong <liuzhensong@loongson.cn>2023-11-17 16:38:55 +0800
commit8338aecd231af48483e36c93c103db1da715ac74 (patch)
tree57ed3aba7bb743b74a978c91e20399fb1fce58b9
parent4f2469d0cdd0f3bd1d9040521e002e8df0a63a98 (diff)
downloadbinutils-8338aecd231af48483e36c93c103db1da715ac74.zip
binutils-8338aecd231af48483e36c93c103db1da715ac74.tar.gz
binutils-8338aecd231af48483e36c93c103db1da715ac74.tar.bz2
LoongArch: Modify link_info.relax_pass from 3 to 2
The first pass handles R_LARCH_RELAX relocations, the second pass handles R_LARCH_ALIGN relocations.
-rw-r--r--bfd/elfnn-loongarch.c2
-rw-r--r--ld/emultempl/loongarchelf.em2
2 files changed, 2 insertions, 2 deletions
diff --git a/bfd/elfnn-loongarch.c b/bfd/elfnn-loongarch.c
index 987e5b9..024c5d4 100644
--- a/bfd/elfnn-loongarch.c
+++ b/bfd/elfnn-loongarch.c
@@ -4013,7 +4013,7 @@ loongarch_elf_relax_section (bfd *abfd, asection *sec,
switch (ELFNN_R_TYPE (rel->r_info))
{
case R_LARCH_ALIGN:
- if (2 == info->relax_pass)
+ if (1 == info->relax_pass)
loongarch_relax_align (abfd, sec, sym_sec, info, rel, symval);
break;
case R_LARCH_DELETE:
diff --git a/ld/emultempl/loongarchelf.em b/ld/emultempl/loongarchelf.em
index d81c99d..9974989 100644
--- a/ld/emultempl/loongarchelf.em
+++ b/ld/emultempl/loongarchelf.em
@@ -42,7 +42,7 @@ larch_elf_before_allocation (void)
ENABLE_RELAXATION;
}
- link_info.relax_pass = 3;
+ link_info.relax_pass = 2;
}
static void