aboutsummaryrefslogtreecommitdiff
path: root/target/s390x/helper.h
diff options
context:
space:
mode:
authorDavid Hildenbrand <david@redhat.com>2019-05-23 15:09:49 +0200
committerDavid Hildenbrand <david@redhat.com>2019-06-07 14:53:25 +0200
commit1fd286385c31e42a60db0a298c01e1c8ec290e3e (patch)
treee37c45b93e375f0bba7e480ea3e0bdf5a2dee4c0 /target/s390x/helper.h
parent33556237f652d8a712d0b6d29ecb442e6b65fe42 (diff)
downloadqemu-1fd286385c31e42a60db0a298c01e1c8ec290e3e.zip
qemu-1fd286385c31e42a60db0a298c01e1c8ec290e3e.tar.gz
qemu-1fd286385c31e42a60db0a298c01e1c8ec290e3e.tar.bz2
s390x/tcg: Implement VECTOR FIND ANY ELEMENT EQUAL
Complicated stuff. Provide two different helpers for CC an !CC handling. We might want to add more helpers later. zero_search() and match_index() are courtesy of Richard H. Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: David Hildenbrand <david@redhat.com>
Diffstat (limited to 'target/s390x/helper.h')
-rw-r--r--target/s390x/helper.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/target/s390x/helper.h b/target/s390x/helper.h
index 7755a96..c45328c 100644
--- a/target/s390x/helper.h
+++ b/target/s390x/helper.h
@@ -211,6 +211,14 @@ DEF_HELPER_FLAGS_4(gvec_vscbi8, TCG_CALL_NO_RWG, void, ptr, cptr, cptr, i32)
DEF_HELPER_FLAGS_4(gvec_vscbi16, TCG_CALL_NO_RWG, void, ptr, cptr, cptr, i32)
DEF_HELPER_4(gvec_vtm, void, ptr, cptr, env, i32)
+/* === Vector String Instructions === */
+DEF_HELPER_FLAGS_4(gvec_vfae8, TCG_CALL_NO_RWG, void, ptr, cptr, cptr, i32)
+DEF_HELPER_FLAGS_4(gvec_vfae16, TCG_CALL_NO_RWG, void, ptr, cptr, cptr, i32)
+DEF_HELPER_FLAGS_4(gvec_vfae32, TCG_CALL_NO_RWG, void, ptr, cptr, cptr, i32)
+DEF_HELPER_5(gvec_vfae_cc8, void, ptr, cptr, cptr, env, i32)
+DEF_HELPER_5(gvec_vfae_cc16, void, ptr, cptr, cptr, env, i32)
+DEF_HELPER_5(gvec_vfae_cc32, void, ptr, cptr, cptr, env, i32)
+
#ifndef CONFIG_USER_ONLY
DEF_HELPER_3(servc, i32, env, i64, i64)
DEF_HELPER_4(diag, void, env, i32, i32, i32)