aboutsummaryrefslogtreecommitdiff
path: root/target-s390x/insn-data.def
diff options
context:
space:
mode:
authorAurelien Jarno <aurelien@aurel32.net>2015-06-15 17:57:07 +0200
committerAlexander Graf <agraf@suse.de>2015-06-17 12:40:50 +0200
commit8df7eef3059394bd53cdf7609aac9a50a78aa030 (patch)
tree346f9be7b16eba5e59961069a802bb6de2525e1a /target-s390x/insn-data.def
parentcbed0ba78f04ce9e2e718431f64eb4b621288aca (diff)
downloadqemu-8df7eef3059394bd53cdf7609aac9a50a78aa030.zip
qemu-8df7eef3059394bd53cdf7609aac9a50a78aa030.tar.gz
qemu-8df7eef3059394bd53cdf7609aac9a50a78aa030.tar.bz2
target-s390x: wire up DIAG IPL in TCG mode
DIAG IPL is already implemented for KVM, but not wired from TCG. For that change the format of the instruction so that we can get R1 and R3 numbers in addition to the function code. The diag function can change plenty of things, including CC, so we should enter with a static CC. Also it doesn't set the value of general register 2 to 0 as in the current code. We also need to exit the CPU loop after a reset, which means a new PSW. Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'target-s390x/insn-data.def')
-rw-r--r--target-s390x/insn-data.def2
1 files changed, 1 insertions, 1 deletions
diff --git a/target-s390x/insn-data.def b/target-s390x/insn-data.def
index 1223670..fe5e591 100644
--- a/target-s390x/insn-data.def
+++ b/target-s390x/insn-data.def
@@ -835,7 +835,7 @@
/* COMPARE AND SWAP AND PURGE */
C(0xb250, CSP, RRE, Z, 0, ra2, 0, 0, csp, 0)
/* DIAGNOSE (KVM hypercall) */
- C(0x8300, DIAG, RX_a, Z, 0, 0, 0, 0, diag, 0)
+ C(0x8300, DIAG, RSI, Z, 0, 0, 0, 0, diag, 0)
/* INSERT STORAGE KEY EXTENDED */
C(0xb229, ISKE, RRE, Z, 0, r2_o, new, r1_8, iske, 0)
/* INVALIDATE PAGE TABLE ENTRY */