This is the mail archive of the
dwarf2@corp.sgi.com
mailing list for the dwarf2 project.
Re: Modifies vs. Replaces
Jim Dehnert wrote:
>
> So my personal bias for the rule we're discussing would be:
>
> The defining instance's global location is always potentially live,
> and must therefore be updated.
>
> The non-defining instance's location(s) take precedence for
> addresses within the specified range(s); only the first one
> encountered with the desired address in range is guaranteed
> to have a valid value for reference, but all must be updated.
>
> This would effectively make the global location a default location, to
> be used whenever there is no other matching address range. It's a
> compact representation, since the non-defining instances only need to
> specify temporary locations that override the global one. It does
> require, though, that a debugger look up the defining instance even
> if it finds a matching local non-defining one.
If you say that the global location is the default when there are no
other matching address ranges, then you seem to exclude the first
item under your "personal bias". If you mean for the global location
to be updated even when there is another matching address range, then
there would be multiple, overlapping, address ranges.
It seems to me that you are saying that location information in
a non-defining declaration for a global should be combined with the
location information in a defining declaration to arrive at the list
of addresses where a location is live.
--
Michael Eager Eager Consulting eager@eagercon.com
1960 Park Blvd., Palo Alto, CA 94306 650-325-8077