diff options
author | Ian Lance Taylor <ian@airs.com> | 2009-09-30 22:21:13 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 2009-09-30 22:21:13 +0000 |
commit | 029ba973354c8eb02c476d3ba8c7f555344afdce (patch) | |
tree | ceb131579a7bb043a19b5bea27b391bcf57126e8 /gold/output.cc | |
parent | 27a5525e751940f55974e64bdcf11f504e68d356 (diff) | |
download | gdb-029ba973354c8eb02c476d3ba8c7f555344afdce.zip gdb-029ba973354c8eb02c476d3ba8c7f555344afdce.tar.gz gdb-029ba973354c8eb02c476d3ba8c7f555344afdce.tar.bz2 |
* object.h (class Object): Remove target_ field, and target,
sized_target, and set_target methods.
(Object::sized_target): Remove.
(class Sized_relobj): Update declarations. Remove sized_target.
* object.cc (Sized_relobj::setup): Remove target parameter.
Change all callers.
(Input_objects::add_object): Don't do anything with the target.
(make_elf_sized_object): Add punconfigured parameter. Change all
callers. Set or test parameter target.
* dynobj.cc (Sized_dynobj::target): Remove target parameter.
Change all callers.
* parameters.cc (Parameters::set_target): Change parameter type to
be non-const.
(Parameters::default_target): Remove.
(set_parameters_target): Change parameter type to be non-const.
(parameters_force_valid_target): New function.
(parameters_clear_target): New function.
* parameters.h (class Parameters): Update declarations. Remove
default_target method. Add sized_target and clear_target
methods. Change target_ to be non-const.
(set_parameters_target): Update declaration.
(parameters_force_valid_target): Declare.
(parameters_clear_target): Declare.
* readsyms.cc (Read_symbols::do_read_symbols): Pass punconfigured
as NULL if we aren't searching.
(Add_symbols::run): Don't check for compatible target.
* fileread.cc (Input_file::open_binary): Call
parameters_force_valid_target.
* gold.cc (queue_middle_tasks): Likewise.
* plugin.cc (make_sized_plugin_object): Likewise. Don't call
set_target on object.
* dynobj.h (class Sized_dynobj): Update declarations.
* archive.cc (Archive::get_elf_object_for_member): Return NULL if
make_elf_object returns NULL.
(Archive::include_member): Don't check whether object target is
compatible.
* output.cc (Output_section::add_input_section): Get target from
parameters.
(Output_section::relax_input_section): Likewise.
* reloc.cc (Sized_relobj::do_gc_process_relocs): Get target from
parameters.
(Sized_relobj::do_scan_relocs): Likewise.
(Sized_relobj::relocate_sections): Likewise.
* resolve.cc (Symbol_table::resolve): Likewise.
* symtab.cc (Symbol_table::wrap_symbol): Likewise. Remove object
parameter. Change all callers.
(Symbol_table::add_from_object): Get target from parameters.
(Symbol_table::add_from_relobj): Don't check object target.
(Symbol_table::add_from_dynobj): Likewise.
(Symbol_table::define_special_symbol): Get target from
parameters.
* symtab.h (class Symbol_table): Update declaration.
* testsuite/binary_unittest.cc (gold_testsuite): Remove target
parameter. Change all callers. Clear parameter target.
(Binary_test): Test target here.
* testsuite/object_unittest.cc (gold_testsuite): Remove
target_test_pointer parameter. Change all callers.
(Object_test): Test target here.
Diffstat (limited to 'gold/output.cc')
-rw-r--r-- | gold/output.cc | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/gold/output.cc b/gold/output.cc index 4ef0a30..e3b1171 100644 --- a/gold/output.cc +++ b/gold/output.cc @@ -1895,7 +1895,7 @@ Output_section::add_input_section(Sized_relobj<size, big_endian>* object, if (aligned_offset_in_section > offset_in_section && !have_sections_script && (sh_flags & elfcpp::SHF_EXECINSTR) != 0 - && object->target()->has_code_fill()) + && parameters->target().has_code_fill()) { // We need to add some fill data. Using fill_list_ when // possible is an optimization, since we will often have fill @@ -1907,7 +1907,7 @@ Output_section::add_input_section(Sized_relobj<size, big_endian>* object, { // FIXME: When relaxing, the size needs to adjust to // maintain a constant alignment. - std::string fill_data(object->target()->code_fill(fill_len)); + std::string fill_data(parameters->target().code_fill(fill_len)); Output_data_const* odc = new Output_data_const(fill_data, 1); this->input_sections_.push_back(Input_section(odc)); } @@ -1925,7 +1925,7 @@ Output_section::add_input_section(Sized_relobj<size, big_endian>* object, || this->may_sort_attached_input_sections() || this->must_sort_attached_input_sections() || parameters->options().user_set_Map() - || object->target()->may_relax()) + || parameters->target().may_relax()) this->input_sections_.push_back(Input_section(object, shndx, shdr.get_sh_size(), addralign)); @@ -2041,7 +2041,7 @@ Output_section::relax_input_section(Output_relaxed_input_section *psection) Relobj* relobj = psection->relobj(); unsigned int shndx = psection->shndx(); - gold_assert(relobj->target()->may_relax()); + gold_assert(parameters->target().may_relax()); // This is not very efficient if we a going to relax a number of sections // in an Output_section with lot of Input_sections. |