aboutsummaryrefslogtreecommitdiff
path: root/gold/powerpc.cc
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2019-09-20 12:21:50 +0930
committerAlan Modra <amodra@gmail.com>2019-09-20 12:51:19 +0930
commite59a1001222d853f0517c7e974bb51589ba86710 (patch)
treed31bde00fd91d48b7367a4ed9eb83984cdcd97bb /gold/powerpc.cc
parente4153ae630fcc779ba414fdcea960394cb479e04 (diff)
downloadgdb-e59a1001222d853f0517c7e974bb51589ba86710.zip
gdb-e59a1001222d853f0517c7e974bb51589ba86710.tar.gz
gdb-e59a1001222d853f0517c7e974bb51589ba86710.tar.bz2
PowerPC64, error on unsupported dynamic relocation
This patch corrects the set of dynamic relocations recognised by gold as supported by glibc, and teaches ld.bfd to report an error similar to the gold error. Note that ld --noinhibit-exec can be used to produce an output, supporting older ld with newer glibc if the set of supported glibc dynamic relocations changes. bfd/ * elf64-ppc.c (ppc64_glibc_dynamic_reloc): New function. (ppc64_elf_relocate_section): Error if emitting unsupported dynamic relocations. gold/ * powerpc.cc (Target_powerpc::Scan::check_non_pic): Move REL24 to 32-bit supported.
Diffstat (limited to 'gold/powerpc.cc')
-rw-r--r--gold/powerpc.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/gold/powerpc.cc b/gold/powerpc.cc
index e69ce19..ad35095 100644
--- a/gold/powerpc.cc
+++ b/gold/powerpc.cc
@@ -7355,7 +7355,6 @@ Target_powerpc<size, big_endian>::Scan::check_non_pic(Relobj* object,
case elfcpp::R_POWERPC_ADDR14_BRTAKEN:
case elfcpp::R_POWERPC_ADDR14_BRNTAKEN:
case elfcpp::R_POWERPC_REL32:
- case elfcpp::R_POWERPC_REL24:
case elfcpp::R_POWERPC_TPREL16:
case elfcpp::R_POWERPC_TPREL16_LO:
case elfcpp::R_POWERPC_TPREL16_HI:
@@ -7404,6 +7403,7 @@ Target_powerpc<size, big_endian>::Scan::check_non_pic(Relobj* object,
{
// These are the relocation types supported only on 32-bit.
// ??? glibc ld.so doesn't need to support these.
+ case elfcpp::R_POWERPC_REL24:
case elfcpp::R_POWERPC_DTPREL16:
case elfcpp::R_POWERPC_DTPREL16_LO:
case elfcpp::R_POWERPC_DTPREL16_HI: