aboutsummaryrefslogtreecommitdiff
path: root/gold/powerpc.cc
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2009-11-04 15:56:03 +0000
committerIan Lance Taylor <ian@airs.com>2009-11-04 15:56:03 +0000
commitf5c870d25d59bc1e6fcb6a836b6bd1981788982c (patch)
tree5f0302e3a7df3fabd48233a453fdeca714c8116d /gold/powerpc.cc
parentc7cbc7a8c26acd91b498167e3a2b8625d5eaa109 (diff)
downloadgdb-f5c870d25d59bc1e6fcb6a836b6bd1981788982c.zip
gdb-f5c870d25d59bc1e6fcb6a836b6bd1981788982c.tar.gz
gdb-f5c870d25d59bc1e6fcb6a836b6bd1981788982c.tar.bz2
* layout.cc (Layout::get_output_section): Add is_interp and
is_dynamic_linker_section parameters. Change all callers. (Layout::choose_output_section): Likewise. (Layout::make_output_section): Likewise. (Layout::add_output_section_data): Add is_dynamic_linker_section parameter. Change all callers. * layout.h (class Layout): Update declarations. * output.h (class Output_section): Add is_interp, set_is_interp, is_dynamic_linker_section, set_is_dynamic_linker_section methods. Add is_interp_, is_dynamic_linker_section_ fields. Change generate_code_fills_at_write_ to a bitfield. * output.cc (Output_section::Output_sections): Initialize new fields. (Output_segment::add_output_section): Add do_sort parameter. Change all callers.
Diffstat (limited to 'gold/powerpc.cc')
-rw-r--r--gold/powerpc.cc14
1 files changed, 7 insertions, 7 deletions
diff --git a/gold/powerpc.cc b/gold/powerpc.cc
index 081a8f5..0475f8e 100644
--- a/gold/powerpc.cc
+++ b/gold/powerpc.cc
@@ -708,7 +708,7 @@ Target_powerpc<size, big_endian>::got_section(Symbol_table* symtab,
layout->add_output_section_data(".got", elfcpp::SHT_PROGBITS,
elfcpp::SHF_ALLOC | elfcpp::SHF_WRITE,
- this->got_);
+ this->got_, false);
// Create the GOT2 or TOC in the .got section.
if (size == 32)
@@ -717,7 +717,7 @@ Target_powerpc<size, big_endian>::got_section(Symbol_table* symtab,
layout->add_output_section_data(".got2", elfcpp::SHT_PROGBITS,
elfcpp::SHF_ALLOC
| elfcpp::SHF_WRITE,
- this->got2_);
+ this->got2_, false);
}
else
{
@@ -725,7 +725,7 @@ Target_powerpc<size, big_endian>::got_section(Symbol_table* symtab,
layout->add_output_section_data(".toc", elfcpp::SHT_PROGBITS,
elfcpp::SHF_ALLOC
| elfcpp::SHF_WRITE,
- this->toc_);
+ this->toc_, false);
}
// Define _GLOBAL_OFFSET_TABLE_ at the start of the .got section.
@@ -751,7 +751,7 @@ Target_powerpc<size, big_endian>::rela_dyn_section(Layout* layout)
gold_assert(layout != NULL);
this->rela_dyn_ = new Reloc_section(parameters->options().combreloc());
layout->add_output_section_data(".rela.dyn", elfcpp::SHT_RELA,
- elfcpp::SHF_ALLOC, this->rela_dyn_);
+ elfcpp::SHF_ALLOC, this->rela_dyn_, true);
}
return this->rela_dyn_;
}
@@ -811,7 +811,7 @@ Output_data_plt_powerpc<size, big_endian>::Output_data_plt_powerpc(Layout* layou
{
this->rel_ = new Reloc_section(false);
layout->add_output_section_data(".rela.plt", elfcpp::SHT_RELA,
- elfcpp::SHF_ALLOC, this->rel_);
+ elfcpp::SHF_ALLOC, this->rel_, true);
}
template<int size, bool big_endian>
@@ -940,7 +940,7 @@ Target_powerpc<size, big_endian>::make_plt_entry(Symbol_table* symtab,
(elfcpp::SHF_ALLOC
| elfcpp::SHF_EXECINSTR
| elfcpp::SHF_WRITE),
- this->plt_);
+ this->plt_, false);
// Define _PROCEDURE_LINKAGE_TABLE_ at the start of the .plt section.
symtab->define_in_output_data("_PROCEDURE_LINKAGE_TABLE_", NULL,
@@ -1502,7 +1502,7 @@ Target_powerpc<size, big_endian>::scan_relocs(
Output_section* os = layout->add_output_section_data(".sdata", 0,
elfcpp::SHF_ALLOC
| elfcpp::SHF_WRITE,
- sdata);
+ sdata, false);
symtab->define_in_output_data("_SDA_BASE_", NULL,
os,
32768, 0,