qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PULL for-2.0 1/1] cpu: Move tcg_exit_req to the end of CPU


From: Andreas Färber
Subject: [Qemu-devel] [PULL for-2.0 1/1] cpu: Move tcg_exit_req to the end of CPUState
Date: Wed, 19 Mar 2014 22:53:24 +0100

From: Richard Henderson <address@hidden>

Reverse an increase in the size of generated code.

Signed-off-by: Richard Henderson <address@hidden>
Signed-off-by: Andreas Färber <address@hidden>
---
 include/qom/cpu.h | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/include/qom/cpu.h b/include/qom/cpu.h
index 06ee263..f99885a 100644
--- a/include/qom/cpu.h
+++ b/include/qom/cpu.h
@@ -227,7 +227,6 @@ struct CPUState {
     bool stop;
     bool stopped;
     volatile sig_atomic_t exit_request;
-    volatile sig_atomic_t tcg_exit_req;
     uint32_t interrupt_request;
     int singlestep_enabled;
     int64_t icount_extra;
@@ -272,6 +271,12 @@ struct CPUState {
     } icount_decr;
     uint32_t can_do_io;
     int32_t exception_index; /* used by m68k TCG */
+
+    /* Note that this is accessed at the start of every TB via a negative
+       offset from AREG0.  Leave this field at the end so as to make the
+       (absolute value) offset as small as possible.  This reduces code
+       size, especially for hosts without large memory offsets.  */
+    volatile sig_atomic_t tcg_exit_req;
 };
 
 QTAILQ_HEAD(CPUTailQ, CPUState);
-- 
1.8.4.5




reply via email to

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