OSDN Git Service

PR gold/13023
authorccoutant <ccoutant>
Mon, 31 Oct 2011 22:51:03 +0000 (22:51 +0000)
committerccoutant <ccoutant>
Mon, 31 Oct 2011 22:51:03 +0000 (22:51 +0000)
commitdbb0d0495a050e078c492ba79267cf24c4e12fdf
treedc36101143238aa87442dca4ee2c520f534cadb3
parent9e7a692ee70550b0a585a5a487bbdbc4479ecb4c
PR gold/13023
* expression.cc (Expression::eval_with_dot): Add
is_section_dot_assignment parameter.
(Expression::eval_maybe_dot): Likewise.  Adjust value when rhs is
absolute and assigning to dot within a section.
* script-sections.cc
(Output_section_element_assignment::set_section_addresses): Pass
dot_section to set_if_absolute.
(Output_section_element_dot_assignment::finalize_symbols): Pass TRUE
as is_section_dot_assignment flag to eval_with_dot.
(Output_section_element_dot_assignment::set_section_addresses):
Likewise.
* script.cc (Symbol_assignment::set_if_absolute): Add dot_section
parameter.  Also set value if relative to dot_section; set the
symbol's output_section.
* script.h (Expression::eval_with_dot): Add is_section_dot_assignment
parameter.  Adjust all callers.
(Expression::eval_maybe_dot): Likewise.
(Symbol_assignment::set_if_absolute): Add dot_section parameter.
Adjust all callers.
* testsuite/script_test_2.t: Test assignment of an absolute value
to dot within an output section element.
gold/ChangeLog
gold/expression.cc
gold/script-sections.cc
gold/script.cc
gold/script.h
gold/testsuite/script_test_2.t