aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2013-11-25 09:34:49 -0700
committerTom Tromey <tromey@redhat.com>2013-12-06 12:13:51 -0700
commite1b06ae220497540d09b295b885dff0c0eb85c4c (patch)
treec3ec665711eb65ee8ab05c8fb2852042c6ade123 /gdb
parent2b69941d0d6730f1968c41bee216d46de48b4839 (diff)
downloadgdb-e1b06ae220497540d09b295b885dff0c0eb85c4c.zip
gdb-e1b06ae220497540d09b295b885dff0c0eb85c4c.tar.gz
gdb-e1b06ae220497540d09b295b885dff0c0eb85c4c.tar.bz2
pack partial_symtab for space
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.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog4
-rw-r--r--gdb/psympriv.h26
2 files changed, 17 insertions, 13 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index fc35c22..476e7bd 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -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.
diff --git a/gdb/psympriv.h b/gdb/psympriv.h
index 7a62bcc..9df687d 100644
--- a/gdb/psympriv.h
+++ b/gdb/psympriv.h
@@ -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