summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBlue Swirl <blauwirbel@gmail.com>2009-04-25 19:07:16 +0000
committerBlue Swirl <blauwirbel@gmail.com>2009-04-25 19:07:16 +0000
commitd877fa5a172e761f83397388826a323a9d6ac007 (patch)
treeb198cd3aa15080cb03aa0d78fc34656b2145cbf7 /cpu-exec.c
parentFix a warning in sparc64-linux-user build (diff)
downloadqemu-kvm-d877fa5a172e761f83397388826a323a9d6ac007.tar.gz
qemu-kvm-d877fa5a172e761f83397388826a323a9d6ac007.tar.bz2
qemu-kvm-d877fa5a172e761f83397388826a323a9d6ac007.zip
Recognize V9 stores and CAS accesses as writes
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to 'cpu-exec.c')
-rw-r--r--cpu-exec.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/cpu-exec.c b/cpu-exec.c
index 90f879bbf..ef378ac55 100644
--- a/cpu-exec.c
+++ b/cpu-exec.c
@@ -1382,12 +1382,24 @@ int cpu_signal_handler(int host_signum, void *pinfo,
if ((insn >> 30) == 3) {
switch((insn >> 19) & 0x3f) {
case 0x05: // stb
+ case 0x15: // stba
case 0x06: // sth
+ case 0x16: // stha
case 0x04: // st
+ case 0x14: // sta
case 0x07: // std
+ case 0x17: // stda
+ case 0x0e: // stx
+ case 0x1e: // stxa
case 0x24: // stf
+ case 0x34: // stfa
case 0x27: // stdf
+ case 0x37: // stdfa
+ case 0x26: // stqf
+ case 0x36: // stqfa
case 0x25: // stfsr
+ case 0x3c: // casa
+ case 0x3e: // casxa
is_write = 1;
break;
}