mirror of
https://github.com/yuzu-emu/unicorn.git
synced 2025-06-01 14:30:29 +00:00
tcg: Implement gvec support for rotate by scalar
No host backend support yet, but the interfaces for rotls are in place. Only implement left-rotate for now, as the only known use of vector rotate by scalar is s390x, so any right-rotate would be unused and untestable. Backports commit 23850a74afb641102325b4b7f74071d929fc4594 from qemu
This commit is contained in:
parent
2aa9d13120
commit
cc3187b1e4
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_aarch64
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_aarch64
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_aarch64
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_aarch64
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_aarch64
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_aarch64
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_aarch64
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_aarch64
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_aarch64
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_aarch64
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_aarch64
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_aarch64
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_aarch64
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_aarch64
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_aarch64
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_aarch64
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_aarch64
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_aarch64
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_aarch64
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_aarch64
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_aarch64
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_aarch64
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_aarch64
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_aarch64
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_aarch64
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_aarch64
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_aarch64eb
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_aarch64eb
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_aarch64eb
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_aarch64eb
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_aarch64eb
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_aarch64eb
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_aarch64eb
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_aarch64eb
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_aarch64eb
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_aarch64eb
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_aarch64eb
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_aarch64eb
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_aarch64eb
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_aarch64eb
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_aarch64eb
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_aarch64eb
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_aarch64eb
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_aarch64eb
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_aarch64eb
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_aarch64eb
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_aarch64eb
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_aarch64eb
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_aarch64eb
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_aarch64eb
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_aarch64eb
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_aarch64eb
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_arm
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_arm
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_arm
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_arm
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_arm
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_arm
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_arm
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_arm
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_arm
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_arm
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_arm
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_arm
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_arm
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_arm
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_arm
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_arm
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_arm
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_arm
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_arm
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_arm
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_arm
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_arm
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_arm
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_arm
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_arm
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_arm
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_armeb
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_armeb
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_armeb
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_armeb
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_armeb
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_armeb
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_armeb
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_armeb
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_armeb
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_armeb
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_armeb
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_armeb
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_armeb
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_armeb
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_armeb
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_armeb
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_armeb
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_armeb
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_armeb
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_armeb
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_armeb
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_armeb
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_armeb
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_armeb
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_armeb
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_armeb
|
||||||
|
|
|
@ -2923,6 +2923,7 @@ symbols = (
|
||||||
'tcg_gen_gvec_ori',
|
'tcg_gen_gvec_ori',
|
||||||
'tcg_gen_gvec_ors',
|
'tcg_gen_gvec_ors',
|
||||||
'tcg_gen_gvec_rotli',
|
'tcg_gen_gvec_rotli',
|
||||||
|
'tcg_gen_gvec_rotls',
|
||||||
'tcg_gen_gvec_rotri',
|
'tcg_gen_gvec_rotri',
|
||||||
'tcg_gen_gvec_rotlv',
|
'tcg_gen_gvec_rotlv',
|
||||||
'tcg_gen_gvec_rotrv',
|
'tcg_gen_gvec_rotrv',
|
||||||
|
@ -3050,6 +3051,7 @@ symbols = (
|
||||||
'tcg_gen_rotli_i32',
|
'tcg_gen_rotli_i32',
|
||||||
'tcg_gen_rotli_i64',
|
'tcg_gen_rotli_i64',
|
||||||
'tcg_gen_rotli_vec',
|
'tcg_gen_rotli_vec',
|
||||||
|
'tcg_gen_rotls_vec',
|
||||||
'tcg_gen_rotlv_vec',
|
'tcg_gen_rotlv_vec',
|
||||||
'tcg_gen_rotri_vec',
|
'tcg_gen_rotri_vec',
|
||||||
'tcg_gen_rotrv_vec',
|
'tcg_gen_rotrv_vec',
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_m68k
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_m68k
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_m68k
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_m68k
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_m68k
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_m68k
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_m68k
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_m68k
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_m68k
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_m68k
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_m68k
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_m68k
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_m68k
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_m68k
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_m68k
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_m68k
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_m68k
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_m68k
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_m68k
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_m68k
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_m68k
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_m68k
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_m68k
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_m68k
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_m68k
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_m68k
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_mips
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_mips
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_mips
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_mips
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_mips
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_mips
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_mips
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_mips
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_mips
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_mips
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_mips
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_mips
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_mips
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_mips
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_mips
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_mips
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_mips
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_mips
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_mips
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_mips
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_mips
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_mips
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_mips
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_mips
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_mips
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_mips
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_mips64
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_mips64
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_mips64
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_mips64
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_mips64
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_mips64
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_mips64
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_mips64
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_mips64
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_mips64
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_mips64
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_mips64
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_mips64
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_mips64
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_mips64
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_mips64
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_mips64
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_mips64
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_mips64
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_mips64
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_mips64
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_mips64
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_mips64
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_mips64
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_mips64
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_mips64
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_mips64el
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_mips64el
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_mips64el
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_mips64el
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_mips64el
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_mips64el
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_mips64el
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_mips64el
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_mips64el
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_mips64el
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_mips64el
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_mips64el
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_mips64el
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_mips64el
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_mips64el
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_mips64el
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_mips64el
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_mips64el
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_mips64el
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_mips64el
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_mips64el
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_mips64el
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_mips64el
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_mips64el
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_mips64el
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_mips64el
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_mipsel
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_mipsel
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_mipsel
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_mipsel
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_mipsel
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_mipsel
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_mipsel
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_mipsel
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_mipsel
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_mipsel
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_mipsel
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_mipsel
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_mipsel
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_mipsel
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_mipsel
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_mipsel
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_mipsel
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_mipsel
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_mipsel
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_mipsel
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_mipsel
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_mipsel
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_mipsel
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_mipsel
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_mipsel
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_mipsel
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_powerpc
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_powerpc
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_powerpc
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_powerpc
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_powerpc
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_powerpc
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_powerpc
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_powerpc
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_powerpc
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_powerpc
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_powerpc
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_powerpc
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_powerpc
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_powerpc
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_powerpc
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_powerpc
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_powerpc
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_powerpc
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_powerpc
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_powerpc
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_powerpc
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_powerpc
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_powerpc
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_powerpc
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_powerpc
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_powerpc
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_riscv32
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_riscv32
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_riscv32
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_riscv32
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_riscv32
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_riscv32
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_riscv32
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_riscv32
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_riscv32
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_riscv32
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_riscv32
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_riscv32
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_riscv32
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_riscv32
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_riscv32
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_riscv32
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_riscv32
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_riscv32
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_riscv32
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_riscv32
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_riscv32
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_riscv32
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_riscv32
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_riscv32
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_riscv32
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_riscv32
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_riscv64
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_riscv64
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_riscv64
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_riscv64
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_riscv64
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_riscv64
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_riscv64
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_riscv64
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_riscv64
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_riscv64
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_riscv64
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_riscv64
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_riscv64
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_riscv64
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_riscv64
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_riscv64
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_riscv64
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_riscv64
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_riscv64
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_riscv64
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_riscv64
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_riscv64
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_riscv64
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_riscv64
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_riscv64
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_riscv64
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_sparc
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_sparc
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_sparc
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_sparc
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_sparc
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_sparc
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_sparc
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_sparc
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_sparc
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_sparc
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_sparc
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_sparc
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_sparc
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_sparc
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_sparc
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_sparc
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_sparc
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_sparc
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_sparc
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_sparc
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_sparc
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_sparc
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_sparc
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_sparc
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_sparc
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_sparc
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_sparc64
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_sparc64
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_sparc64
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_sparc64
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_sparc64
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_sparc64
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_sparc64
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_sparc64
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_sparc64
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_sparc64
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_sparc64
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_sparc64
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_sparc64
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_sparc64
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_sparc64
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_sparc64
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_sparc64
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_sparc64
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_sparc64
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_sparc64
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_sparc64
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_sparc64
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_sparc64
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_sparc64
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_sparc64
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_sparc64
|
||||||
|
|
|
@ -134,6 +134,7 @@ typedef enum {
|
||||||
#define TCG_TARGET_HAS_neg_vec 1
|
#define TCG_TARGET_HAS_neg_vec 1
|
||||||
#define TCG_TARGET_HAS_abs_vec 1
|
#define TCG_TARGET_HAS_abs_vec 1
|
||||||
#define TCG_TARGET_HAS_roti_vec 0
|
#define TCG_TARGET_HAS_roti_vec 0
|
||||||
|
#define TCG_TARGET_HAS_rots_vec 0
|
||||||
#define TCG_TARGET_HAS_rotv_vec 0
|
#define TCG_TARGET_HAS_rotv_vec 0
|
||||||
#define TCG_TARGET_HAS_shi_vec 1
|
#define TCG_TARGET_HAS_shi_vec 1
|
||||||
#define TCG_TARGET_HAS_shs_vec 0
|
#define TCG_TARGET_HAS_shs_vec 0
|
||||||
|
|
|
@ -217,6 +217,7 @@ extern bool have_avx2;
|
||||||
#define TCG_TARGET_HAS_neg_vec 0
|
#define TCG_TARGET_HAS_neg_vec 0
|
||||||
#define TCG_TARGET_HAS_abs_vec 1
|
#define TCG_TARGET_HAS_abs_vec 1
|
||||||
#define TCG_TARGET_HAS_roti_vec 0
|
#define TCG_TARGET_HAS_roti_vec 0
|
||||||
|
#define TCG_TARGET_HAS_rots_vec 0
|
||||||
#define TCG_TARGET_HAS_rotv_vec 0
|
#define TCG_TARGET_HAS_rotv_vec 0
|
||||||
#define TCG_TARGET_HAS_shi_vec 1
|
#define TCG_TARGET_HAS_shi_vec 1
|
||||||
#define TCG_TARGET_HAS_shs_vec 1
|
#define TCG_TARGET_HAS_shs_vec 1
|
||||||
|
|
|
@ -2977,6 +2977,28 @@ void tcg_gen_gvec_sars(TCGContext *s, unsigned vece, uint32_t dofs, uint32_t aof
|
||||||
do_gvec_shifts(s, vece, dofs, aofs, shift, oprsz, maxsz, &g);
|
do_gvec_shifts(s, vece, dofs, aofs, shift, oprsz, maxsz, &g);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void tcg_gen_gvec_rotls(TCGContext *s, unsigned vece, uint32_t dofs, uint32_t aofs,
|
||||||
|
TCGv_i32 shift, uint32_t oprsz, uint32_t maxsz)
|
||||||
|
{
|
||||||
|
static const GVecGen2sh g = {
|
||||||
|
.fni4 = tcg_gen_rotl_i32,
|
||||||
|
.fni8 = tcg_gen_rotl_i64,
|
||||||
|
.fniv_s = tcg_gen_rotls_vec,
|
||||||
|
.fniv_v = tcg_gen_rotlv_vec,
|
||||||
|
.fno = {
|
||||||
|
gen_helper_gvec_rotl8i,
|
||||||
|
gen_helper_gvec_rotl16i,
|
||||||
|
gen_helper_gvec_rotl32i,
|
||||||
|
gen_helper_gvec_rotl64i,
|
||||||
|
},
|
||||||
|
.s_list = { INDEX_op_rotls_vec, 0 },
|
||||||
|
.v_list = { INDEX_op_rotlv_vec, 0 },
|
||||||
|
};
|
||||||
|
|
||||||
|
tcg_debug_assert(vece <= MO_64);
|
||||||
|
do_gvec_shifts(s, vece, dofs, aofs, shift, oprsz, maxsz, &g);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Expand D = A << (B % element bits)
|
* Expand D = A << (B % element bits)
|
||||||
*
|
*
|
||||||
|
|
|
@ -345,6 +345,8 @@ void tcg_gen_gvec_shrs(TCGContext *s, unsigned vece, uint32_t dofs, uint32_t aof
|
||||||
TCGv_i32 shift, uint32_t oprsz, uint32_t maxsz);
|
TCGv_i32 shift, uint32_t oprsz, uint32_t maxsz);
|
||||||
void tcg_gen_gvec_sars(TCGContext *s, unsigned vece, uint32_t dofs, uint32_t aofs,
|
void tcg_gen_gvec_sars(TCGContext *s, unsigned vece, uint32_t dofs, uint32_t aofs,
|
||||||
TCGv_i32 shift, uint32_t oprsz, uint32_t maxsz);
|
TCGv_i32 shift, uint32_t oprsz, uint32_t maxsz);
|
||||||
|
void tcg_gen_gvec_rotls(TCGContext *s, unsigned vece, uint32_t dofs, uint32_t aofs,
|
||||||
|
TCGv_i32 shift, uint32_t oprsz, uint32_t maxsz);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Perform vector shift by vector element, modulo the element size.
|
* Perform vector shift by vector element, modulo the element size.
|
||||||
|
|
|
@ -749,6 +749,11 @@ void tcg_gen_sars_vec(TCGContext *s, unsigned vece, TCGv_vec r, TCGv_vec a, TCGv
|
||||||
do_shifts(s, vece, r, a, b, INDEX_op_sars_vec);
|
do_shifts(s, vece, r, a, b, INDEX_op_sars_vec);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void tcg_gen_rotls_vec(TCGContext *tcg_ctx, unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_i32 s)
|
||||||
|
{
|
||||||
|
do_shifts(tcg_ctx, vece, r, a, s, INDEX_op_rotls_vec);
|
||||||
|
}
|
||||||
|
|
||||||
void tcg_gen_bitsel_vec(TCGContext *s, unsigned vece, TCGv_vec r, TCGv_vec a,
|
void tcg_gen_bitsel_vec(TCGContext *s, unsigned vece, TCGv_vec r, TCGv_vec a,
|
||||||
TCGv_vec b, TCGv_vec c)
|
TCGv_vec b, TCGv_vec c)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1007,6 +1007,7 @@ void tcg_gen_rotri_vec(TCGContext *s, unsigned vece, TCGv_vec r, TCGv_vec a, int
|
||||||
void tcg_gen_shls_vec(TCGContext *, unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_i32 s);
|
void tcg_gen_shls_vec(TCGContext *, unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_i32 s);
|
||||||
void tcg_gen_shrs_vec(TCGContext *, unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_i32 s);
|
void tcg_gen_shrs_vec(TCGContext *, unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_i32 s);
|
||||||
void tcg_gen_sars_vec(TCGContext *, unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_i32 s);
|
void tcg_gen_sars_vec(TCGContext *, unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_i32 s);
|
||||||
|
void tcg_gen_rotls_vec(TCGContext *, unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_i32 s);
|
||||||
|
|
||||||
void tcg_gen_shlv_vec(TCGContext *, unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_vec s);
|
void tcg_gen_shlv_vec(TCGContext *, unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_vec s);
|
||||||
void tcg_gen_shrv_vec(TCGContext *, unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_vec s);
|
void tcg_gen_shrv_vec(TCGContext *, unsigned vece, TCGv_vec r, TCGv_vec a, TCGv_vec s);
|
||||||
|
|
|
@ -250,6 +250,7 @@ DEF(rotli_vec, 1, 1, 1, IMPLVEC | IMPL(TCG_TARGET_HAS_roti_vec))
|
||||||
DEF(shls_vec, 1, 2, 0, IMPLVEC | IMPL(TCG_TARGET_HAS_shs_vec))
|
DEF(shls_vec, 1, 2, 0, IMPLVEC | IMPL(TCG_TARGET_HAS_shs_vec))
|
||||||
DEF(shrs_vec, 1, 2, 0, IMPLVEC | IMPL(TCG_TARGET_HAS_shs_vec))
|
DEF(shrs_vec, 1, 2, 0, IMPLVEC | IMPL(TCG_TARGET_HAS_shs_vec))
|
||||||
DEF(sars_vec, 1, 2, 0, IMPLVEC | IMPL(TCG_TARGET_HAS_shs_vec))
|
DEF(sars_vec, 1, 2, 0, IMPLVEC | IMPL(TCG_TARGET_HAS_shs_vec))
|
||||||
|
DEF(rotls_vec, 1, 2, 0, IMPLVEC | IMPL(TCG_TARGET_HAS_rots_vec))
|
||||||
|
|
||||||
DEF(shlv_vec, 1, 2, 0, IMPLVEC | IMPL(TCG_TARGET_HAS_shv_vec))
|
DEF(shlv_vec, 1, 2, 0, IMPLVEC | IMPL(TCG_TARGET_HAS_shv_vec))
|
||||||
DEF(shrv_vec, 1, 2, 0, IMPLVEC | IMPL(TCG_TARGET_HAS_shv_vec))
|
DEF(shrv_vec, 1, 2, 0, IMPLVEC | IMPL(TCG_TARGET_HAS_shv_vec))
|
||||||
|
|
|
@ -1080,6 +1080,8 @@ bool tcg_op_supported(TCGOpcode op)
|
||||||
return have_vec && TCG_TARGET_HAS_shv_vec;
|
return have_vec && TCG_TARGET_HAS_shv_vec;
|
||||||
case INDEX_op_rotli_vec:
|
case INDEX_op_rotli_vec:
|
||||||
return have_vec && TCG_TARGET_HAS_roti_vec;
|
return have_vec && TCG_TARGET_HAS_roti_vec;
|
||||||
|
case INDEX_op_rotls_vec:
|
||||||
|
return have_vec && TCG_TARGET_HAS_rots_vec;
|
||||||
case INDEX_op_rotlv_vec:
|
case INDEX_op_rotlv_vec:
|
||||||
case INDEX_op_rotrv_vec:
|
case INDEX_op_rotrv_vec:
|
||||||
return have_vec && TCG_TARGET_HAS_rotv_vec;
|
return have_vec && TCG_TARGET_HAS_rotv_vec;
|
||||||
|
|
|
@ -186,6 +186,7 @@ typedef uint64_t TCGRegSet;
|
||||||
#define TCG_TARGET_HAS_andc_vec 0
|
#define TCG_TARGET_HAS_andc_vec 0
|
||||||
#define TCG_TARGET_HAS_orc_vec 0
|
#define TCG_TARGET_HAS_orc_vec 0
|
||||||
#define TCG_TARGET_HAS_roti_vec 0
|
#define TCG_TARGET_HAS_roti_vec 0
|
||||||
|
#define TCG_TARGET_HAS_rots_vec 0
|
||||||
#define TCG_TARGET_HAS_rotv_vec 0
|
#define TCG_TARGET_HAS_rotv_vec 0
|
||||||
#define TCG_TARGET_HAS_shi_vec 0
|
#define TCG_TARGET_HAS_shi_vec 0
|
||||||
#define TCG_TARGET_HAS_shs_vec 0
|
#define TCG_TARGET_HAS_shs_vec 0
|
||||||
|
@ -1093,7 +1094,7 @@ static inline TCGv_ptr tcg_temp_local_new_ptr(TCGContext *s)
|
||||||
}
|
}
|
||||||
|
|
||||||
// UNICORN: Added
|
// UNICORN: Added
|
||||||
#define TCG_OP_DEFS_TABLE_SIZE 188
|
#define TCG_OP_DEFS_TABLE_SIZE 189
|
||||||
extern const TCGOpDef tcg_op_defs_org[TCG_OP_DEFS_TABLE_SIZE];
|
extern const TCGOpDef tcg_op_defs_org[TCG_OP_DEFS_TABLE_SIZE];
|
||||||
|
|
||||||
typedef struct TCGTargetOpDef {
|
typedef struct TCGTargetOpDef {
|
||||||
|
|
|
@ -2917,6 +2917,7 @@
|
||||||
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_x86_64
|
#define tcg_gen_gvec_ori tcg_gen_gvec_ori_x86_64
|
||||||
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_x86_64
|
#define tcg_gen_gvec_ors tcg_gen_gvec_ors_x86_64
|
||||||
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_x86_64
|
#define tcg_gen_gvec_rotli tcg_gen_gvec_rotli_x86_64
|
||||||
|
#define tcg_gen_gvec_rotls tcg_gen_gvec_rotls_x86_64
|
||||||
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_x86_64
|
#define tcg_gen_gvec_rotri tcg_gen_gvec_rotri_x86_64
|
||||||
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_x86_64
|
#define tcg_gen_gvec_rotlv tcg_gen_gvec_rotlv_x86_64
|
||||||
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_x86_64
|
#define tcg_gen_gvec_rotrv tcg_gen_gvec_rotrv_x86_64
|
||||||
|
@ -3044,6 +3045,7 @@
|
||||||
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_x86_64
|
#define tcg_gen_rotli_i32 tcg_gen_rotli_i32_x86_64
|
||||||
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_x86_64
|
#define tcg_gen_rotli_i64 tcg_gen_rotli_i64_x86_64
|
||||||
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_x86_64
|
#define tcg_gen_rotli_vec tcg_gen_rotli_vec_x86_64
|
||||||
|
#define tcg_gen_rotls_vec tcg_gen_rotls_vec_x86_64
|
||||||
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_x86_64
|
#define tcg_gen_rotlv_vec tcg_gen_rotlv_vec_x86_64
|
||||||
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_x86_64
|
#define tcg_gen_rotri_vec tcg_gen_rotri_vec_x86_64
|
||||||
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_x86_64
|
#define tcg_gen_rotrv_vec tcg_gen_rotrv_vec_x86_64
|
||||||
|
|
Loading…
Reference in a new issue