pack partial_symtab for space
authorTom Tromey <tromey@redhat.com>
Mon, 25 Nov 2013 16:34:49 +0000 (09:34 -0700)
committerTom Tromey <tromey@redhat.com>
Fri, 6 Dec 2013 19:13:51 +0000 (12:13 -0700)
This improves the packing of struct partial_symtab.  I noticed with
pahole that were were a couple of holes.  This consolidates the holes
without, I think, affecting readability -- it just moves the "user"
field a bit earlier in the struct.  This change saves a small amount
of memory.

2013-12-06  Tom Tromey  <tromey@redhat.com>

* psympriv.h (struct partial_symtab) <user>: Move earlier.

gdb/ChangeLog
gdb/psympriv.h

index fc35c22..476e7bd 100644 (file)
@@ -1,5 +1,9 @@
 2013-12-06  Tom Tromey  <tromey@redhat.com>
 
+       * psympriv.h (struct partial_symtab) <user>: Move earlier.
+
+2013-12-06  Tom Tromey  <tromey@redhat.com>
+
        * cli/cli-cmds.c (edit_command): Use paddress, not hex_string.
        (list_command): Likewise.
 
index 7a62bcc..9df687d 100644 (file)
@@ -111,19 +111,6 @@ struct partial_symtab
   CORE_ADDR textlow;
   CORE_ADDR texthigh;
 
-  /* Array of pointers to all of the partial_symtab's which this one
-     depends on.  Since this array can only be set to previous or
-     the current (?) psymtab, this dependency tree is guaranteed not
-     to have any loops.  "depends on" means that symbols must be read
-     for the dependencies before being read for this psymtab; this is
-     for type references in stabs, where if foo.c includes foo.h, declarations
-     in foo.h may use type numbers defined in foo.c.  For other debugging
-     formats there may be no need to use dependencies.  */
-
-  struct partial_symtab **dependencies;
-
-  int number_of_dependencies;
-
   /* If NULL, this is an ordinary partial symbol table.
 
      If non-NULL, this holds a single includer of this partial symbol
@@ -153,6 +140,19 @@ struct partial_symtab
 
   struct partial_symtab *user;
 
+  /* Array of pointers to all of the partial_symtab's which this one
+     depends on.  Since this array can only be set to previous or
+     the current (?) psymtab, this dependency tree is guaranteed not
+     to have any loops.  "depends on" means that symbols must be read
+     for the dependencies before being read for this psymtab; this is
+     for type references in stabs, where if foo.c includes foo.h, declarations
+     in foo.h may use type numbers defined in foo.c.  For other debugging
+     formats there may be no need to use dependencies.  */
+
+  struct partial_symtab **dependencies;
+
+  int number_of_dependencies;
+
   /* Global symbol list.  This list will be sorted after readin to
      improve access.  Binary search will be the usual method of
      finding a symbol within it.  globals_offset is an integer offset