Re: [PATCH 01/23] dwarf: add dwarf3 DW_OP_push_object_address opcode

Joel Brobecker
2014-07-07T15:29:59Z

> I'd like to add a function that resolves a value - that way, the work
> is going to be centralized at one place. But I would think that I can
> take care of this independently of your patch series, so you do not
> need to worry about that for this series.

FTR, I gave it a try a few weeks ago being going away for a while,
and found that it was probably not as straightforward as one thought.
Extracting the original value's type and address to create resolved
type is pretty straightforward if you assume that the value address
is always going to be valid if the type uses dynamic properties. But
reconstructing a value from that original value and the new type
seems a lot trickier. If the value has a location, is the location
to be preserved, for instance? I don't want to create a non-lval
value if the original value was an lval. That way, expressions
involving operators such as the address operator still work.

Thoughts?

--
Joel