This is the mail archive of the mailing list for the GDB 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: DWARF-2 and address sizes

On Friday, January 31, 2003, at 05:36  PM, Daniel Jacobowitz wrote:

On Fri, Jan 31, 2003 at 04:59:56PM -0500, Andrew Cagney wrote:
[Kevin, I noticed you doing some work in this area re S/390, maybe you've
got a comment? Anyone else? I'm grasping at straws.]

I'm trying to figure out how to handle addresses in the DWARF expression
evaluator. First consider DW_OP_deref: the following data is "the size of
an address on the target machine", which I would personally take to mean
cu_header->addr_size. Is this ever different from TARGET_ADDRESS_BIT /
TARGET_CHAR_BIT, which is what Daniel was originally using?
I can imagine architectures wack-o enough for cu_header->addr_size !=
TARGET_ADDRESS_BIT / TARGET_CHAR_BIT. Someone doing a 16 bit port using
32 bit elf.

I'm willing to document this as an assertion, store the dwarf2 address
size and signedness somewhere global, and bail if I detect a violation.
But I'll skip that for now; it can be a later cleanup.  I've already
got too many pieces in this patch.

IIRC, I did it some *other* way, and Jim told me to do it with the way there now.
Or is that the other way around (He told me to do it some other way, rather than what's there now, and i never got to it).
I believe I used to use one of the length of one of builtin types, and he told me to use TARGET_ADDRESS_BIT / TARGET_CHAR_BIT.
The archives should say.

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