From e7eca48cb283da81b3566df52c01ac510cc1013d Mon Sep 17 00:00:00 2001 From: Doug Kwan Date: Fri, 29 Jan 2010 18:23:18 +0000 Subject: 2010-01-29 Doug Kwan * 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::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. --- gold/object.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'gold/object.h') 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 This; -- cgit v1.2.1