aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2022-02-05 07:26:31 -0800
committerH.J. Lu <hjl.tools@gmail.com>2022-02-05 07:34:12 -0800
commita9e61227c09c03d5cb54f9c88520baffc1d86c86 (patch)
treefec294b10daee4ed1afd307b3f3166ba22ad2c58
parent0acf434a23768449cbb4b3732355f3f2febecaee (diff)
downloadgdb-a9e61227c09c03d5cb54f9c88520baffc1d86c86.zip
gdb-a9e61227c09c03d5cb54f9c88520baffc1d86c86.tar.gz
gdb-a9e61227c09c03d5cb54f9c88520baffc1d86c86.tar.bz2
x86: Skip undefined symbol when finishing DT_RELR
Don't abort for undefined symbol when finishing DT_RELR. Instead, skip undefined symbol. Undefined symbol will be reported by relocate_section. * elfxx-x86.c (elf_x86_size_or_finish_relative_reloc): Skip undefined symbol in finishing phase.
-rw-r--r--bfd/elfxx-x86.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c
index da8a488..7ac2411 100644
--- a/bfd/elfxx-x86.c
+++ b/bfd/elfxx-x86.c
@@ -1484,11 +1484,13 @@ elf_x86_size_or_finish_relative_reloc
}
else
{
- /* Allow undefined symbol only at the sizing phase. */
+ /* Allow undefined symbol only at the sizing phase.
+ Otherwise skip undefined symbol here. Undefined
+ symbol will be reported by relocate_section. */
if (outrel == NULL)
relocation = 0;
else
- abort ();
+ continue;
}
}
else