2010-05-26 Rafael Espindola <espindola@google.com>

* script-sections.cc (Output_section_definition::set_section_addresses):
	Check for --section-start.
This commit is contained in:
Rafael Ávila de Espíndola 2010-05-26 15:15:05 +00:00
parent c8ce57109c
commit f418727792
2 changed files with 21 additions and 7 deletions

View file

@ -1,3 +1,8 @@
2010-05-26 Rafael Espindola <espindola@google.com>
* script-sections.cc (Output_section_definition::set_section_addresses):
Check for --section-start.
2010-05-26 Doug Kwan <dougkwan@google.com> 2010-05-26 Doug Kwan <dougkwan@google.com>
* arm.cc (Arm_scan_relocatable_relocs): New class. * arm.cc (Arm_scan_relocatable_relocs): New class.

View file

@ -1939,14 +1939,23 @@ Output_section_definition::set_section_addresses(Symbol_table* symtab,
uint64_t old_dot_value = *dot_value; uint64_t old_dot_value = *dot_value;
uint64_t old_load_address = *load_address; uint64_t old_load_address = *load_address;
if (this->address_ == NULL) // Check for --section-start.
address = *dot_value; bool is_address_set = false;
else if (this->output_section_ != NULL)
is_address_set =
parameters->options().section_start(this->output_section_->name(),
&address);
if (!is_address_set)
{ {
Output_section* dummy; if (this->address_ == NULL)
address = this->address_->eval_with_dot(symtab, layout, true, address = *dot_value;
*dot_value, NULL, &dummy, else
dot_alignment); {
Output_section* dummy;
address = this->address_->eval_with_dot(symtab, layout, true,
*dot_value, NULL, &dummy,
dot_alignment);
}
} }
uint64_t align; uint64_t align;