diff options
author | Doug Kwan <dougkwan@google.com> | 2010-06-30 06:41:09 +0000 |
---|---|---|
committer | Doug Kwan <dougkwan@google.com> | 2010-06-30 06:41:09 +0000 |
commit | b2286c10fe98d0bc1e4e207d0966cbd9e3bba58a (patch) | |
tree | 292470d366a43ff72fe1cd45398e3df194f60999 /gold/arm-reloc-property.cc | |
parent | 3863f96c205610e5351a0484cc9d45f9779365bf (diff) | |
download | gdb-b2286c10fe98d0bc1e4e207d0966cbd9e3bba58a.zip gdb-b2286c10fe98d0bc1e4e207d0966cbd9e3bba58a.tar.gz gdb-b2286c10fe98d0bc1e4e207d0966cbd9e3bba58a.tar.bz2 |
2010-06-29 Doug Kwan <dougkwan@google.com>
* arm-reloc-property.cc (Arm_reloc_property::Arm_reloc_property):
Initialize USE_SYMBOL_.
* arm-reloc-property.h (Arm_reloc_property::uses_symbol): New method
definition.
(Arm_reloc_property::uses_symbol_): New data member declaration.
* arm.cc (Target_arm::Relocate::relocate): Exit early if relocation
uses symbol value and symbol is undefined but not weakly undefined.
Diffstat (limited to 'gold/arm-reloc-property.cc')
-rw-r--r-- | gold/arm-reloc-property.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gold/arm-reloc-property.cc b/gold/arm-reloc-property.cc index 4f8fa9e..007653c 100644 --- a/gold/arm-reloc-property.cc +++ b/gold/arm-reloc-property.cc @@ -104,7 +104,8 @@ Arm_reloc_property::Arm_reloc_property( relative_address_base_(RAB_NONE), is_deprecated_(is_deprecated), is_implemented_(is_implemented), checks_overflow_(checks_overflow), uses_got_entry_(false), uses_got_origin_(false), uses_plt_entry_(false), - uses_thumb_bit_(false), uses_symbol_base_(false), uses_addend_(false) + uses_thumb_bit_(false), uses_symbol_base_(false), uses_addend_(false), + uses_symbol_(false) { // Set size and alignment of static and dynamic relocations. if (rtype == RT_STATIC) @@ -246,6 +247,7 @@ Arm_reloc_property::Arm_reloc_property( } gold_assert(node->is_leaf() && node->name() == "S"); + this->uses_symbol_ = true; delete root_node; } |