public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] rearrange struct value to save memory
@ 2014-01-09 19:03 Tom Tromey
  2014-01-10  3:32 ` Yao Qi
  2014-01-16 21:54 ` Tom Tromey
  0 siblings, 2 replies; 6+ messages in thread
From: Tom Tromey @ 2014-01-09 19:03 UTC (permalink / raw)
  To: gdb-patches; +Cc: Tom Tromey

This patch rearranges struct value a tiny bit, moving the "regnum"
field into a hole.  This saves 8 bytes per value on a 64-bit machine,
and 4 bytes per value on a 32 bit machine.  I think it does not
negatively affect readability or performance.

Built and regtested on x86-64 Fedora 18.

Let me know what you think.

2014-01-09  Tom Tromey  <tromey@redhat.com>

	* value.c (struct value) <regnum>: Move earlier.
---
 gdb/ChangeLog | 4 ++++
 gdb/value.c   | 6 +++---
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/gdb/value.c b/gdb/value.c
index 8542316..0e13b76 100644
--- a/gdb/value.c
+++ b/gdb/value.c
@@ -216,6 +216,9 @@ struct value
   /* If the value has been released.  */
   unsigned int released : 1;
 
+  /* Register number if the value is from a register.  */
+  short regnum;
+
   /* Location of value (if lval).  */
   union
   {
@@ -324,9 +327,6 @@ struct value
      taken off this list.  */
   struct value *next;
 
-  /* Register number if the value is from a register.  */
-  short regnum;
-
   /* Actual contents of the value.  Target byte-order.  NULL or not
      valid if lazy is nonzero.  */
   gdb_byte *contents;
-- 
1.8.1.4

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-01-16 21:54 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-01-09 19:03 [PATCH] rearrange struct value to save memory Tom Tromey
2014-01-10  3:32 ` Yao Qi
2014-01-10 17:12   ` Tom Tromey
2014-01-13 20:02   ` Tom Tromey
2014-01-14 13:50     ` Yao Qi
2014-01-16 21:54 ` Tom Tromey

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).