aboutsummaryrefslogtreecommitdiff
path: root/target/s390x/insn-data.def
diff options
context:
space:
mode:
authorDavid Hildenbrand <david@redhat.com>2019-04-10 22:55:16 +0200
committerDavid Hildenbrand <david@redhat.com>2019-05-17 10:54:13 +0200
commitdb156ebfae0d7707d81d13234e2fd43dd3347298 (patch)
tree5caf566e136c6f59a25a1411481ef780e1d49be8 /target/s390x/insn-data.def
parente58de341d948d12cb36bbc5aa4866b7412581880 (diff)
downloadqemu-db156ebfae0d7707d81d13234e2fd43dd3347298.zip
qemu-db156ebfae0d7707d81d13234e2fd43dd3347298.tar.gz
qemu-db156ebfae0d7707d81d13234e2fd43dd3347298.tar.bz2
s390x/tcg: Implement VECTOR TEST UNDER MASK
Let's return the cc value directly via cpu_env. Unfortunately there isn't a simple way to calculate the value lazily - one would have to calculate and store e.g. the population count of the mask and the result so it can be evaluated in a cc helper. But as VTM only sets the cc, we can assume the value will be needed soon either way. Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: David Hildenbrand <david@redhat.com>
Diffstat (limited to 'target/s390x/insn-data.def')
-rw-r--r--target/s390x/insn-data.def2
1 files changed, 2 insertions, 0 deletions
diff --git a/target/s390x/insn-data.def b/target/s390x/insn-data.def
index a52db41..e61475b 100644
--- a/target/s390x/insn-data.def
+++ b/target/s390x/insn-data.def
@@ -1188,6 +1188,8 @@
F(0xe767, VSUMQ, VRR_c, V, 0, 0, 0, 0, vsumq, 0, IF_VEC)
/* VECTOR SUM ACROSS WORD */
F(0xe764, VSUM, VRR_c, V, 0, 0, 0, 0, vsum, 0, IF_VEC)
+/* VECTOR TEST UNDER MASK */
+ F(0xe7d8, VTM, VRR_a, V, 0, 0, 0, 0, vtm, 0, IF_VEC)
#ifndef CONFIG_USER_ONLY
/* COMPARE AND SWAP AND PURGE */