From: Andrew Cagney Date: Tue, 21 Aug 2001 00:24:58 +0000 (+0000) Subject: * gdbtypes.h (struct type): Clarify meaning of field ``length''. X-Git-Tag: cygnus_cvs_20020108_pre~1617 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1c72f9b0c41ef5de822fce0d6faed9c69d40a589;p=external%2Fbinutils.git * gdbtypes.h (struct type): Clarify meaning of field ``length''. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 9b55d7d..62381a8 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2001-08-20 Andrew Cagney + + * gdbtypes.h (struct type): Clarify meaning of field ``length''. + 2001-08-17 Keith Seitz * varobj.c (varobj_update): Change first parameter to diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h index bc0f8fb..6869a60 100644 --- a/gdb/gdbtypes.h +++ b/gdb/gdbtypes.h @@ -231,13 +231,17 @@ struct type char *tag_name; - /* Length of storage for a value of this type. Various places pass - this to memcpy and such, meaning it must be in units of - HOST_CHAR_BIT. Various other places expect they can calculate - addresses by adding it and such, meaning it must be in units of + /* Length of storage for a value of this type. This is of length + of the type as defined by the debug info and not the length of + the value that resides within the type. For instance, an + i386-ext floating-point value only occupies 80 bits of what is + typically a 12 byte `long double'. Various places pass this to + memcpy and such, meaning it must be in units of HOST_CHAR_BIT. + Various other places expect they can calculate addresses by + adding it and such, meaning it must be in units of TARGET_CHAR_BIT. For some DSP targets, in which HOST_CHAR_BIT - will (presumably) be 8 and TARGET_CHAR_BIT will be (say) 32, this - is a problem. One fix would be to make this field in bits + will (presumably) be 8 and TARGET_CHAR_BIT will be (say) 32, + this is a problem. One fix would be to make this field in bits (requiring that it always be a multiple of HOST_CHAR_BIT and TARGET_CHAR_BIT)--the other choice would be to make it consistently in units of HOST_CHAR_BIT. */