diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2014-03-19 22:36:44 +0000 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2014-03-19 22:36:44 +0000 |
commit | d1a1451cd3a60df7dbfd4fb7f616443d22be1beb (patch) | |
tree | aee9b95d47e1e2b88f4b381257290fe80fe09ed5 /include/qom | |
parent | 037b7addb7f9ad5dc52c3d05da8b2f60386252ff (diff) | |
parent | 7e4fb26d757b460de5b80b4220bcd926f7175cb2 (diff) |
Merge remote-tracking branch 'remotes/afaerber/tags/qom-cpu-for-2.0' into staging
QOM CPUState refactorings / X86CPU
* CPUState layout optimization for TCG
# gpg: Signature made Wed 19 Mar 2014 21:51:46 GMT using RSA key ID 3E7E013F
# gpg: Good signature from "Andreas Färber <afaerber@suse.de>"
# gpg: aka "Andreas Färber <afaerber@suse.com>"
* remotes/afaerber/tags/qom-cpu-for-2.0:
cpu: Move tcg_exit_req to the end of CPUState
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'include/qom')
-rw-r--r-- | include/qom/cpu.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/include/qom/cpu.h b/include/qom/cpu.h index 06ee2636c3..f99885a137 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); |