PR gold/13023
authorCary Coutant <ccoutant@google.com>
Mon, 31 Oct 2011 22:51:03 +0000 (22:51 +0000)
committerCary Coutant <ccoutant@google.com>
Mon, 31 Oct 2011 22:51:03 +0000 (22:51 +0000)
commit286adcf4f8c8bb15d46dca29dd7e9a8c935f5e3e
tree906b1740ca3a14e1c98515db9662b67fc532b2ca
parent9634ed06a66c3693045bb8b3bf86b43942239dd8
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