aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/elf64-ppc.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index aeae3b7..0ac96af 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -10318,8 +10318,9 @@ ppc64_elf_size_dynamic_sections (bfd *output_bfd,
htab->got_reli_size += rel_size;
}
else if (bfd_link_pic (info)
- && !(ent->tls_type != 0
- && bfd_link_executable (info)))
+ && (ent->tls_type == 0
+ ? !info->enable_dt_relr
+ : !bfd_link_executable (info)))
{
asection *srel = ppc64_elf_tdata (ibfd)->relgot;
srel->size += rel_size;
@@ -12815,8 +12816,9 @@ ppc64_elf_layout_multitoc (struct bfd_link_info *info)
htab->got_reli_size += rel_size;
}
else if (bfd_link_pic (info)
- && !(ent->tls_type != 0
- && bfd_link_executable (info)))
+ && (ent->tls_type == 0
+ ? !info->enable_dt_relr
+ : !bfd_link_executable (info)))
{
asection *srel = ppc64_elf_tdata (ibfd)->relgot;
srel->size += rel_size;