This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [gold] PowerPC PLT
On Tue, Nov 18, 2008 at 10:49 AM, Ian Lance Taylor <iant@google.com> wrote:
> Output_data_space is essentially equivalent to an input section,
> albeit one for which the linker itself provides the contents. Each
> Output_data_space, like each input section, is attached to a
> particular output section. The layout machinery will pick a location
> for the Output_data_space object within the output section.
>
> Calling add_output_section_data is the primary way to attach an
> Output_section_data object (such as an Output_data_space object) to an
> output section. In general gold treats each {name, type, flags} tuple
> as a unique output section (for completeness I will note that some
> flags are ignored, and that there are some exceptions for GNU ld
> compatibility). When you call add_output_section_data, if there is no
> output section matching the {name, type, flags} tuple, gold will
> create one. Otherwise gold will attach the Output_section_data object
> to the existing output section.
Ian,
What is the relationship between different Output_data_space objects?
Are Output_data_space objects contiguous? I am trying to understand
the meaning of offset() and address() for various Output_data_space
objects attached to a single output section. What is the relationship
between set_data_size() for the output section and set_data_size() for
the Output_data_space objects?
In other words, beyond the logical relationships, what are the semantics
of how the various Output_data_space objects fit together and relate to one
another within the Gold API?
Thanks, David