This is the mail archive of the gdb-patches@sourceware.org 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: [RFA] small size reduction to struct die_info


On Sat, Sep 13, 2008 at 7:21 PM, Daniel Jacobowitz <drow@false.org> wrote:
> On Sat, Sep 13, 2008 at 06:25:36PM -0700, Doug Evans wrote:
>> This reduces the size of struct die_info for 32 bit hosts.
>>
>> Ok to check in?
>>
>> 2008-09-13  Doug Evans  <dje@sebabeach.org>
>>
>>         * dwarf2read.c (struct die_info): Make members tag, num_attrs 16 bits.
>
> OK, though I wonder if GCC generates better code for short than int :
> 16?

There's no difference in generated code. I went with short just in
case some other compiler had issues.

This patch does the same thing for structs attr_abbrev, attribute.  Ok
to check in?

2008-09-14  Doug Evans  <dje@sebabeach.org>

        * dwarf2read.c (struct abbrev_info): Make members name, form 16 bits.
        (struct attribute): Ditto.

Index: dwarf2read.c
===================================================================
RCS file: /cvs/src/src/gdb/dwarf2read.c,v
retrieving revision 1.282
diff -u -p -r1.282 dwarf2read.c
--- dwarf2read.c        15 Sep 2008 01:22:02 -0000      1.282
+++ dwarf2read.c        15 Sep 2008 02:19:52 -0000
@@ -513,15 +513,15 @@ struct abbrev_info

 struct attr_abbrev
   {
-    enum dwarf_attribute name;
-    enum dwarf_form form;
+    ENUM_BITFIELD(dwarf_attribute) name : 16;
+    ENUM_BITFIELD(dwarf_form) form : 16;
   };

 /* Attributes have a name and a value */
 struct attribute
   {
-    enum dwarf_attribute name;
-    enum dwarf_form form;
+    ENUM_BITFIELD(dwarf_attribute) name : 16;
+    ENUM_BITFIELD(dwarf_form) form : 16;
     union
       {
        char *str;


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