gold/arm.cc: Output mapping symbol for PLT code

Message ID 1423473430-11492-1-git-send-email-will.newton@linaro.org
State New
Headers show

Commit Message

Will Newton Feb. 9, 2015, 9:17 a.m.
Output an ARM state mapping symbol at the start of the PLT. With the
current code objdump will fail to disassemble the PLT that gold
creates.

gold/ChangeLog:

2015-02-09  Will Newton  <will.newton@linaro.org>

	PR gold/13321
	* arm.cc (Target_arm::make_plt_section): Create an ARM
	state mapping symbol at the start of the PLT.
---
 gold/arm.cc | 7 +++++++
 1 file changed, 7 insertions(+)

Patch hide | download patch | download mbox

diff --git a/gold/arm.cc b/gold/arm.cc
index be2294c..f1d4fe9 100644
--- a/gold/arm.cc
+++ b/gold/arm.cc
@@ -7938,6 +7938,13 @@  Target_arm<big_endian>::make_plt_section(
 				      (elfcpp::SHF_ALLOC
 				       | elfcpp::SHF_EXECINSTR),
 				      this->plt_, ORDER_PLT, false);
+      symtab->define_in_output_data("$a", NULL,
+				    Symbol_table::PREDEFINED,
+				    this->plt_,
+				    0, 0, elfcpp::STT_NOTYPE,
+				    elfcpp::STB_LOCAL,
+				    elfcpp::STV_DEFAULT, 0,
+				    false, false);
     }
 }