mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 15:23:53 -06:00
tcg: Replace IMPLVEC with TCG_OPF_VECTOR
This is now a direct replacement. Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
76187b4f57
commit
f9af66f6dc
6 changed files with 68 additions and 71 deletions
|
@ -221,66 +221,63 @@ DEF(qemu_st_a64_i128, 0, 3, 1, TCG_OPF_CALL_CLOBBER | TCG_OPF_SIDE_EFFECTS)
|
|||
|
||||
/* Host vector support. */
|
||||
|
||||
#define IMPLVEC TCG_OPF_VECTOR
|
||||
|
||||
DEF(mov_vec, 1, 1, 0, TCG_OPF_VECTOR | TCG_OPF_NOT_PRESENT)
|
||||
|
||||
DEF(dup_vec, 1, 1, 0, IMPLVEC)
|
||||
DEF(dup2_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(dup_vec, 1, 1, 0, TCG_OPF_VECTOR)
|
||||
DEF(dup2_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
|
||||
DEF(ld_vec, 1, 1, 1, IMPLVEC)
|
||||
DEF(st_vec, 0, 2, 1, IMPLVEC)
|
||||
DEF(dupm_vec, 1, 1, 1, IMPLVEC)
|
||||
DEF(ld_vec, 1, 1, 1, TCG_OPF_VECTOR)
|
||||
DEF(st_vec, 0, 2, 1, TCG_OPF_VECTOR)
|
||||
DEF(dupm_vec, 1, 1, 1, TCG_OPF_VECTOR)
|
||||
|
||||
DEF(add_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(sub_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(mul_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(neg_vec, 1, 1, 0, IMPLVEC)
|
||||
DEF(abs_vec, 1, 1, 0, IMPLVEC)
|
||||
DEF(ssadd_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(usadd_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(sssub_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(ussub_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(smin_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(umin_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(smax_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(umax_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(add_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(sub_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(mul_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(neg_vec, 1, 1, 0, TCG_OPF_VECTOR)
|
||||
DEF(abs_vec, 1, 1, 0, TCG_OPF_VECTOR)
|
||||
DEF(ssadd_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(usadd_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(sssub_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(ussub_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(smin_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(umin_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(smax_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(umax_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
|
||||
DEF(and_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(or_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(xor_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(andc_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(orc_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(nand_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(nor_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(eqv_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(not_vec, 1, 1, 0, IMPLVEC)
|
||||
DEF(and_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(or_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(xor_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(andc_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(orc_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(nand_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(nor_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(eqv_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(not_vec, 1, 1, 0, TCG_OPF_VECTOR)
|
||||
|
||||
DEF(shli_vec, 1, 1, 1, IMPLVEC)
|
||||
DEF(shri_vec, 1, 1, 1, IMPLVEC)
|
||||
DEF(sari_vec, 1, 1, 1, IMPLVEC)
|
||||
DEF(rotli_vec, 1, 1, 1, IMPLVEC)
|
||||
DEF(shli_vec, 1, 1, 1, TCG_OPF_VECTOR)
|
||||
DEF(shri_vec, 1, 1, 1, TCG_OPF_VECTOR)
|
||||
DEF(sari_vec, 1, 1, 1, TCG_OPF_VECTOR)
|
||||
DEF(rotli_vec, 1, 1, 1, TCG_OPF_VECTOR)
|
||||
|
||||
DEF(shls_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(shrs_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(sars_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(rotls_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(shls_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(shrs_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(sars_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(rotls_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
|
||||
DEF(shlv_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(shrv_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(sarv_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(rotlv_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(rotrv_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(shlv_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(shrv_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(sarv_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(rotlv_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(rotrv_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
|
||||
DEF(cmp_vec, 1, 2, 1, IMPLVEC)
|
||||
DEF(cmp_vec, 1, 2, 1, TCG_OPF_VECTOR)
|
||||
|
||||
DEF(bitsel_vec, 1, 3, 0, IMPLVEC)
|
||||
DEF(cmpsel_vec, 1, 4, 1, IMPLVEC)
|
||||
DEF(bitsel_vec, 1, 3, 0, TCG_OPF_VECTOR)
|
||||
DEF(cmpsel_vec, 1, 4, 1, TCG_OPF_VECTOR)
|
||||
|
||||
DEF(last_generic, 0, 0, 0, TCG_OPF_NOT_PRESENT)
|
||||
|
||||
#include "tcg-target-opc.h.inc"
|
||||
|
||||
#undef DATA64_ARGS
|
||||
#undef IMPLVEC
|
||||
#undef DEF
|
||||
|
|
|
@ -11,5 +11,5 @@
|
|||
* consider these to be UNSPEC with names.
|
||||
*/
|
||||
|
||||
DEF(aa64_sshl_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(aa64_sli_vec, 1, 2, 1, IMPLVEC)
|
||||
DEF(aa64_sshl_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(aa64_sli_vec, 1, 2, 1, TCG_OPF_VECTOR)
|
||||
|
|
|
@ -11,6 +11,6 @@
|
|||
* consider these to be UNSPEC with names.
|
||||
*/
|
||||
|
||||
DEF(arm_sli_vec, 1, 2, 1, IMPLVEC)
|
||||
DEF(arm_sshl_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(arm_ushl_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(arm_sli_vec, 1, 2, 1, TCG_OPF_VECTOR)
|
||||
DEF(arm_sshl_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(arm_ushl_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
|
|
|
@ -24,14 +24,14 @@
|
|||
* consider these to be UNSPEC with names.
|
||||
*/
|
||||
|
||||
DEF(x86_shufps_vec, 1, 2, 1, IMPLVEC)
|
||||
DEF(x86_blend_vec, 1, 2, 1, IMPLVEC)
|
||||
DEF(x86_packss_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(x86_packus_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(x86_psrldq_vec, 1, 1, 1, IMPLVEC)
|
||||
DEF(x86_vperm2i128_vec, 1, 2, 1, IMPLVEC)
|
||||
DEF(x86_punpckl_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(x86_punpckh_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(x86_vpshldi_vec, 1, 2, 1, IMPLVEC)
|
||||
DEF(x86_vpshldv_vec, 1, 3, 0, IMPLVEC)
|
||||
DEF(x86_vpshrdv_vec, 1, 3, 0, IMPLVEC)
|
||||
DEF(x86_shufps_vec, 1, 2, 1, TCG_OPF_VECTOR)
|
||||
DEF(x86_blend_vec, 1, 2, 1, TCG_OPF_VECTOR)
|
||||
DEF(x86_packss_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(x86_packus_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(x86_psrldq_vec, 1, 1, 1, TCG_OPF_VECTOR)
|
||||
DEF(x86_vperm2i128_vec, 1, 2, 1, TCG_OPF_VECTOR)
|
||||
DEF(x86_punpckl_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(x86_punpckh_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(x86_vpshldi_vec, 1, 2, 1, TCG_OPF_VECTOR)
|
||||
DEF(x86_vpshldv_vec, 1, 3, 0, TCG_OPF_VECTOR)
|
||||
DEF(x86_vpshrdv_vec, 1, 3, 0, TCG_OPF_VECTOR)
|
||||
|
|
|
@ -24,9 +24,9 @@
|
|||
* consider these to be UNSPEC with names.
|
||||
*/
|
||||
|
||||
DEF(ppc_mrgh_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(ppc_mrgl_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(ppc_msum_vec, 1, 3, 0, IMPLVEC)
|
||||
DEF(ppc_muleu_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(ppc_mulou_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(ppc_pkum_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(ppc_mrgh_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(ppc_mrgl_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(ppc_msum_vec, 1, 3, 0, TCG_OPF_VECTOR)
|
||||
DEF(ppc_muleu_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(ppc_mulou_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
DEF(ppc_pkum_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
|
|
|
@ -10,6 +10,6 @@
|
|||
* emitted by tcg_expand_vec_op. For those familiar with GCC internals,
|
||||
* consider these to be UNSPEC with names.
|
||||
*/
|
||||
DEF(s390_vuph_vec, 1, 1, 0, IMPLVEC)
|
||||
DEF(s390_vupl_vec, 1, 1, 0, IMPLVEC)
|
||||
DEF(s390_vpks_vec, 1, 2, 0, IMPLVEC)
|
||||
DEF(s390_vuph_vec, 1, 1, 0, TCG_OPF_VECTOR)
|
||||
DEF(s390_vupl_vec, 1, 1, 0, TCG_OPF_VECTOR)
|
||||
DEF(s390_vpks_vec, 1, 2, 0, TCG_OPF_VECTOR)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue