qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH] tcg: Remove redundant pointer from TCGContext


From: Stefan Weil
Subject: [Qemu-devel] [PATCH] tcg: Remove redundant pointer from TCGContext
Date: Thu, 4 Oct 2012 20:29:02 +0200

The pointer entry 'temps' always refers to the array entry 'static_temps'.
Removing the pointer and renaming 'static_temps' to 'temps' reduces the
size of TCGContext (4 or 8 byte) and allows better code generation.

Signed-off-by: Stefan Weil <address@hidden>
---

The size of the executables is typically reduced by about 80 byte.
Usually smaller code also runs faster, but that effect will be
very small here.

Regards
Stefan Weil

 tcg/tcg.c |    1 -
 tcg/tcg.h |    3 +--
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/tcg/tcg.c b/tcg/tcg.c
index 72f4b26..a99255c 100644
--- a/tcg/tcg.c
+++ b/tcg/tcg.c
@@ -242,7 +242,6 @@ void tcg_context_init(TCGContext *s)
     int *sorted_args;
 
     memset(s, 0, sizeof(*s));
-    s->temps = s->static_temps;
     s->nb_globals = 0;
     
     /* Count total number of arguments and allocate the corresponding
diff --git a/tcg/tcg.h b/tcg/tcg.h
index af7464a..1e43ce4 100644
--- a/tcg/tcg.h
+++ b/tcg/tcg.h
@@ -336,7 +336,6 @@ struct TCGContext {
     TCGPool *pool_first, *pool_current, *pool_first_large;
     TCGLabel *labels;
     int nb_labels;
-    TCGTemp *temps; /* globals first, temps after */
     int nb_globals;
     int nb_temps;
     /* index of free temps, -1 if none */
@@ -362,7 +361,7 @@ struct TCGContext {
     int frame_reg;
 
     uint8_t *code_ptr;
-    TCGTemp static_temps[TCG_MAX_TEMPS];
+    TCGTemp temps[TCG_MAX_TEMPS]; /* globals first, temps after */
 
     TCGHelperInfo *helpers;
     int nb_helpers;
-- 
1.7.10




reply via email to

[Prev in Thread] Current Thread [Next in Thread]