This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] ld: Correct private data merging for DSOs


On 04/12/12 11:37, Richard Sandiford wrote:
Attributes as defined by ARM are explicitly for relocatable objects,
with program headers being used to record DSO compatibility.
I think we're not supposed to merge any attributes that a DSO
happens to have into an executable.  Hopefully Richard E can confirm.

The attributes /design/ was intended to deal with linkable objects that would be handled by LD. It comes from the background of many different design trade-offs for embedded systems which can lead to incompatibilities if not carefully managed. It was never intended to be a high-performance system that would be used, for example, each time a binary was run. The expectation for the latter is that the relevant information would be distilled into an executable that could be rapidly checked by a program loader if needed. Examples in this case would then be limited to validating that the binary was compatible with the current execution environment (CPU architecture, etc).


That being said, there's nothing in the design that would prevent it being used within a DSO beyond the fact that the information is only exposed by the section view and a DSO is only required to expose a segment view. To fix that you'd have to start doing things like adding a DT_ tag to reference the information.

The point still stands, though, that it wasn't the intended purpose of the information.

R.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]