summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2022-06-23 17:50:30 +0930
committerAlan Modra <amodra@gmail.com>2022-06-23 18:49:41 +0930
commit97dd8079feb35456d7b387a594b5e00f7654b3b8 (patch)
tree53fa72d250f6ff89b9992c69120af57382296d61
parenteed56ee299b9ef8754bb4e53f2e9cf2a7c28c04d (diff)
PowerPC64: fix assertion in ppc_build_one_stub with -Os code
save_res stubs aren't written in ppc_build_one_stub, their offsets (which are zero) should not be checked. * elf64-ppc.c (ppc_build_one_stub): Don't check save_res offsets. (cherry picked from commit 570e911f4e533fad33ad5e4e1102929cf7e80bd7)
-rw-r--r--bfd/elf64-ppc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index cb12ed476d..df503341fe 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -11700,7 +11700,8 @@ ppc_build_one_stub (struct bfd_hash_entry *gen_entry, void *in_arg)
if (htab == NULL)
return false;
- BFD_ASSERT (stub_entry->stub_offset >= stub_entry->group->stub_sec->size);
+ BFD_ASSERT (stub_entry->stub_offset >= stub_entry->group->stub_sec->size
+ || stub_entry->type.main == ppc_stub_save_res);
loc = stub_entry->group->stub_sec->contents + stub_entry->stub_offset;
htab->stub_count[stub_entry->type.main - 1] += 1;