diff options
author | Blue Swirl <blauwirbel@gmail.com> | 2012-05-30 04:23:40 +0000 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2012-06-24 01:04:43 +0200 |
commit | 2f5a189caefe2ecbd32faf528a0fbf8c915dfa08 (patch) | |
tree | 87960abefc1a5653b12dc178a12ab49191e45480 /cpu-all.h | |
parent | 8555f71dcbbe562429bbb25e0028f71e5741b752 (diff) | |
download | qemu-2f5a189caefe2ecbd32faf528a0fbf8c915dfa08.tar.gz qemu-2f5a189caefe2ecbd32faf528a0fbf8c915dfa08.tar.bz2 qemu-2f5a189caefe2ecbd32faf528a0fbf8c915dfa08.zip |
ppc: Move load and store helpers, switch to AREG0 free mode
Add an explicit CPUPPCState parameter instead of relying on AREG0
and rename op_helper.c (which only contains load and store helpers)
to mem_helper.c. Remove AREG0 swapping in
tlb_fill().
Switch to AREG0 free mode. Use cpu_ld{l,uw}_code in translation
and interrupt handling, cpu_{ld,st}{l,uw}_data in loads and stores.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'cpu-all.h')
-rw-r--r-- | cpu-all.h | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -291,6 +291,15 @@ extern unsigned long reserved_va; #define stfl_kernel(p, v) stfl_raw(p, v) #define stfq_kernel(p, vt) stfq_raw(p, v) +#ifdef CONFIG_TCG_PASS_AREG0 +#define cpu_ldub_data(env, addr) ldub_raw(addr) +#define cpu_lduw_data(env, addr) lduw_raw(addr) +#define cpu_ldl_data(env, addr) ldl_raw(addr) + +#define cpu_stb_data(env, addr, data) stb_raw(addr, data) +#define cpu_stw_data(env, addr, data) stw_raw(addr, data) +#define cpu_stl_data(env, addr, data) stl_raw(addr, data) +#endif #endif /* defined(CONFIG_USER_ONLY) */ /* page related stuff */ |