summaryrefslogtreecommitdiffstats
path: root/gold/object.h
diff options
context:
space:
mode:
authorDoug Kwan <dougkwan@google.com>2010-01-29 18:23:18 +0000
committerDoug Kwan <dougkwan@google.com>2010-01-29 18:23:18 +0000
commite7eca48cb283da81b3566df52c01ac510cc1013d (patch)
treee367aaa3dd15844bda87869721e7c50ecf124d40 /gold/object.h
parentb0e28b39b7de5e36bb162657c3b62ba6349ba4b2 (diff)
downloadppe42-binutils-e7eca48cb283da81b3566df52c01ac510cc1013d.tar.gz
ppe42-binutils-e7eca48cb283da81b3566df52c01ac510cc1013d.zip
2010-01-29 Doug Kwan <dougkwan@google.com>
* arm.cc (Arm_relobj::Arm_relobj): Initialize new data member output_local_symbol_count_needs_update_. (Arm_relobj::output_local_symbol_count_needs_update, Arm_relobj::set_output_local_symbol_count_needs_update, Arm_relobj::update_output_local_symbol_count): New methods. (Arm_relobj::output_local_symbol_count_needs_update_): New data member. (Arm_exidx_cantunwind::do_fixed_endian_write): Write address of pointed function as in a R_ARM_PREL31 relocation. (Arm_output_section<big_endian>::fix_exidx_coverage): Mark objects for output local symbol count updating. (Target_arm::do_relax): Update output local symbol counts in objects if necessary. * object.h (Sized_relobj::set_output_local_symbol_count): New method.
Diffstat (limited to 'gold/object.h')
-rw-r--r--gold/object.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/gold/object.h b/gold/object.h
index 3f9aaaedc4..fb3caefcdb 100644
--- a/gold/object.h
+++ b/gold/object.h
@@ -1689,6 +1689,11 @@ class Sized_relobj : public Relobj
do_relocate_sections(const Symbol_table* symtab, const Layout* layout,
const unsigned char* pshdrs, Views* pviews);
+ // Allow a child to set output local symbol count.
+ void
+ set_output_local_symbol_count(unsigned int value)
+ { this->output_local_symbol_count_ = value; }
+
private:
// For convenience.
typedef Sized_relobj<size, big_endian> This;
OpenPOWER on IntegriCloud