aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/elf32-arm.c5
2 files changed, 9 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 1603be8..c3e5253 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2021-04-14 Alan Modra <amodra@gmail.com>
+
+ PR 27630
+ * elf32-arm.c (elf32_arm_size_stubs): Don't use &hash->root when
+ hash might be NULL, cast instead.
+
2021-04-13 Clément Chigot <clement.chigot@atos.net>
* xcofflink.c (xcoff_link_check_ar_symbols): Update esym earlier.
diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c
index 29656a7..81667ea 100644
--- a/bfd/elf32-arm.c
+++ b/bfd/elf32-arm.c
@@ -6582,8 +6582,9 @@ elf32_arm_size_stubs (bfd *output_bfd,
&& (r_type != (unsigned int) R_ARM_PLT32)
&& !((r_type == (unsigned int) R_ARM_TLS_CALL
|| r_type == (unsigned int) R_ARM_THM_TLS_CALL)
- && r_type == elf32_arm_tls_transition
- (info, r_type, &hash->root)
+ && r_type == (elf32_arm_tls_transition
+ (info, r_type,
+ (struct elf_link_hash_entry *) hash))
&& ((hash ? hash->tls_type
: (elf32_arm_local_got_tls_type
(input_bfd)[r_indx]))