[GOLD] PowerPC TOC16 and GOT16 relocs are relative
Alan Modra
amodra@gmail.com
Thu Nov 19 06:38:00 GMT 2015
A pasto from x86_64, probably. BTW, looks to me like RELATIVE_REF
is write-only.
* powerpc.cc (Target_powerpc::Scan::get_reference_flags): Correct
GOT16 and TOC16 relocs to RELATIVE_REF.
diff --git a/gold/powerpc.cc b/gold/powerpc.cc
index 3a013ef..5441c52 100644
--- a/gold/powerpc.cc
+++ b/gold/powerpc.cc
@@ -5326,8 +5326,7 @@ Target_powerpc<size, big_endian>::Scan::get_reference_flags(
case elfcpp::R_PPC64_TOC16_HA:
case elfcpp::R_PPC64_TOC16_DS:
case elfcpp::R_PPC64_TOC16_LO_DS:
- // Absolute in GOT.
- ref = Symbol::ABSOLUTE_REF;
+ ref = Symbol::RELATIVE_REF;
break;
case elfcpp::R_POWERPC_GOT_TPREL16:
--
Alan Modra
Australia Development Lab, IBM
More information about the Binutils
mailing list