aboutsummaryrefslogtreecommitdiff
path: root/target-s390x/insn-data.def
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2012-08-23 12:30:12 -0700
committerRichard Henderson <rth@twiddle.net>2013-01-05 12:18:41 -0800
commit722bfec331504bf873a5e4ec4f232c4ed116dda2 (patch)
tree79494a0dcd62f09ae4bd37ca4b3b60c1b48cc3de /target-s390x/insn-data.def
parent83b00736f3d8033861c27b80c9d3fc7c44bbec99 (diff)
downloadqemu-722bfec331504bf873a5e4ec4f232c4ed116dda2.zip
qemu-722bfec331504bf873a5e4ec4f232c4ed116dda2.tar.gz
qemu-722bfec331504bf873a5e4ec4f232c4ed116dda2.tar.bz2
target-s390: Convert MULTIPLY AND ADD, SUBTRACT
Use the new float*_muladd interface to softfloat. Signed-off-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'target-s390x/insn-data.def')
-rw-r--r--target-s390x/insn-data.def11
1 files changed, 11 insertions, 0 deletions
diff --git a/target-s390x/insn-data.def b/target-s390x/insn-data.def
index 89f71ac..a924a93 100644
--- a/target-s390x/insn-data.def
+++ b/target-s390x/insn-data.def
@@ -391,6 +391,17 @@
C(0xc201, MSFI, RIL_a, GIE, r1_o, i2, new, r1_32, mul, 0)
C(0xc200, MSGFI, RIL_a, GIE, r1_o, i2, r1, 0, mul, 0)
+/* MULTIPLY AND ADD */
+ C(0xb30e, MAEBR, RRD, Z, e1, e2, new, e1, maeb, 0)
+ C(0xb31e, MADBR, RRD, Z, f1_o, f2_o, f1, 0, madb, 0)
+ C(0xed0e, MAEB, RXF, Z, e1, m2_32u, new, e1, maeb, 0)
+ C(0xed1e, MADB, RXF, Z, f1_o, m2_64, f1, 0, madb, 0)
+/* MULTIPLY AND SUBTRACT */
+ C(0xb30f, MSEBR, RRD, Z, e1, e2, new, e1, mseb, 0)
+ C(0xb31f, MSDBR, RRD, Z, f1_o, f2_o, f1, 0, msdb, 0)
+ C(0xed0f, MSEB, RXF, Z, e1, m2_32u, new, e1, mseb, 0)
+ C(0xed1f, MSDB, RXF, Z, f1_o, m2_64, f1, 0, msdb, 0)
+
/* OR */
C(0x1600, OR, RR_a, Z, r1, r2, new, r1_32, or, nz32)
C(0xb9f6, ORK, RRF_a, DO, r2, r3, new, r1_32, or, nz32)