[binutils-gdb] gold/arm.cc: Output mapping symbol for PLT code
Will Newton
willnewton@sourceware.org
Wed Feb 11 07:19:00 GMT 2015
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=07f107f306e422497915e62f6c3d3d6d7b20e8e1
commit 07f107f306e422497915e62f6c3d3d6d7b20e8e1
Author: Will Newton <will.newton@linaro.org>
Date: Mon Feb 9 17:11:54 2015 +0800
gold/arm.cc: Output mapping symbol for PLT code
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-11 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.
Diff:
---
gold/ChangeLog | 6 ++++++
gold/arm.cc | 7 +++++++
2 files changed, 13 insertions(+)
diff --git a/gold/ChangeLog b/gold/ChangeLog
index 87900ad..17b7f44 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,9 @@
+2015-02-11 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.
+
2015-02-09 H.J. Lu <hongjiu.lu@intel.com>
* testsuite/Makefile.am (two_file_shared_2_pic_1_test_DEPENDENCIES):
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);
}
}
More information about the Binutils-cvs
mailing list