Lines Matching +full:3 +full:v3

57 #define FPF_LONG        3
203 #define gen_gvec_3(v1, v2, v3, gen) \
205 vec_full_reg_offset(v3), 16, 16, gen)
206 #define gen_gvec_3_ool(v1, v2, v3, data, fn) \
208 vec_full_reg_offset(v3), 16, 16, data, fn)
209 #define gen_gvec_3_ptr(v1, v2, v3, ptr, data, fn) \
211 vec_full_reg_offset(v3), ptr, 16, 16, data, fn)
212 #define gen_gvec_3i(v1, v2, v3, c, gen) \
214 vec_full_reg_offset(v3), 16, 16, c, gen)
215 #define gen_gvec_4(v1, v2, v3, v4, gen) \
217 vec_full_reg_offset(v3), vec_full_reg_offset(v4), \
219 #define gen_gvec_4_ool(v1, v2, v3, v4, data, fn) \
221 vec_full_reg_offset(v3), vec_full_reg_offset(v4), \
223 #define gen_gvec_4_ptr(v1, v2, v3, v4, ptr, data, fn) \
225 vec_full_reg_offset(v3), vec_full_reg_offset(v4), \
243 #define gen_gvec_fn_3(fn, es, v1, v2, v3) \
245 vec_full_reg_offset(v3), 16, 16)
246 #define gen_gvec_fn_4(fn, es, v1, v2, v3, v4) \
248 vec_full_reg_offset(v3), vec_full_reg_offset(v4), 16, 16)
312 gen_gvec_3_ool(get_field(s, v1), get_field(s, v2), get_field(s, v3), 0,
637 read_vec_element_i64(o->out, get_field(s, v3), enr, es);
642 get_vec_element_ptr_i64(ptr, get_field(s, v3), o->addr1, es);
674 enr = 3;
704 const uint8_t v3 = get_field(s, v3);
708 if (v3 < v1 || (v3 - v1 + 1) > 16) {
719 gen_addi_and_wrap_i64(s, t0, o->addr1, (v3 - v1) * 16 + 8);
725 if (v1 == v3) {
824 const uint8_t v3 = get_field(s, v3);
842 read_vec_element_i64(tmp, v3, src_idx, es);
853 read_vec_element_i64(tmp, v3, src_idx, es);
865 const uint8_t v3 = get_field(s, v3);
867 static gen_helper_gvec_3 * const vpk[3] = {
872 static gen_helper_gvec_3 * const vpks[3] = {
877 static gen_helper_gvec_3_ptr * const vpks_cc[3] = {
882 static gen_helper_gvec_3 * const vpkls[3] = {
887 static gen_helper_gvec_3_ptr * const vpkls_cc[3] = {
901 gen_gvec_3_ptr(v1, v2, v3, tcg_env, 0, vpks_cc[es - 1]);
904 gen_gvec_3_ool(v1, v2, v3, 0, vpks[es - 1]);
909 gen_gvec_3_ptr(v1, v2, v3, tcg_env, 0, vpkls_cc[es - 1]);
912 gen_gvec_3_ool(v1, v2, v3, 0, vpkls[es - 1]);
917 if (v1 != v2 && v1 != v3) {
929 read_vec_element_i64(tmp, v3, src_idx, src_es);
934 gen_gvec_3_ool(v1, v2, v3, 0, vpk[es - 1]);
946 get_field(s, v3), get_field(s, v4),
959 read_vec_element_i64(t1, get_field(s, v3), i3, ES_64);
976 vec_reg_offset(get_field(s, v3), enr, es),
1020 get_field(s, v3));
1036 idx1 = 3;
1041 idx2 = 3;
1204 const uint8_t v3 = get_field(s, v3);
1208 while (v3 < v1 || (v3 - v1 + 1) > 16) {
1215 tcg_constant_i64((v3 - v1 + 1) * 16));
1224 if (v1 == v3) {
1290 get_field(s, v2), get_field(s, v3));
1294 get_field(s, v3));
1375 get_field(s, v2), get_field(s, v3));
1379 get_field(s, v3), &g[es]);
1403 get_field(s, v2), get_field(s, v3),
1431 get_field(s, v2), get_field(s, v3),
1439 get_field(s, v3));
1446 get_field(s, v2), get_field(s, v3));
1492 get_field(s, v3), &g[es]);
1534 get_field(s, v3), &g[es]);
1544 read_vec_element_i32(sum, get_field(s, v3), 1, ES_32);
1587 vec_full_reg_offset(get_field(s, v3)), 16, 16);
1658 get_field(s, v3));
1677 get_field(s, v3), &g[es]);
1696 get_field(s, v3), get_field(s, v4), &g[es]);
1730 const uint8_t v3 = get_field(s, v3);
1740 gen_gvec_fn_3(smax, es, v1, v2, v3);
1743 gen_gvec_fn_3(umax, es, v1, v2, v3);
1746 gen_gvec_fn_3(smin, es, v1, v2, v3);
1749 gen_gvec_fn_3(umin, es, v1, v2, v3);
1796 static const GVecGen4 g_vmal[3] = {
1801 static const GVecGen4 g_vmah[3] = {
1806 static const GVecGen4 g_vmalh[3] = {
1811 static const GVecGen4 g_vmae[3] = {
1816 static const GVecGen4 g_vmale[3] = {
1821 static const GVecGen4 g_vmao[3] = {
1826 static const GVecGen4 g_vmalo[3] = {
1865 get_field(s, v3), get_field(s, v4), fn);
1886 static const GVecGen3 g_vmh[3] = {
1891 static const GVecGen3 g_vmlh[3] = {
1896 static const GVecGen3 g_vme[3] = {
1901 static const GVecGen3 g_vmle[3] = {
1906 static const GVecGen3 g_vmo[3] = {
1911 static const GVecGen3 g_vmlo[3] = {
1926 get_field(s, v2), get_field(s, v3));
1951 get_field(s, v3), fn);
1969 /* Multiply both even elements from v2 and v3 */
1971 read_vec_element_i64(h1, get_field(s, v3), 0, ES_64);
1974 if (extract32(get_field(s, m6), 3, 1)) {
1978 /* Multiply both odd elements from v2 and v3 */
1980 read_vec_element_i64(h2, get_field(s, v3), 1, ES_64);
2003 get_field(s, v2), get_field(s, v3));
2010 get_field(s, v3));
2017 get_field(s, v3));
2024 get_field(s, v3));
2031 get_field(s, v3));
2094 get_field(s, v3), i4, &g[es]);
2103 const uint8_t v3 = get_field(s, v3);
2112 gen_gvec_fn_3(shlv, es, v1, v2, v3);
2115 gen_gvec_fn_3(rotlv, es, v1, v2, v3);
2118 gen_gvec_fn_3(sarv, es, v1, v2, v3);
2121 gen_gvec_fn_3(shrv, es, v1, v2, v3);
2135 const uint8_t v3 = get_field(s, v3);
2146 gen_gvec_fn_2i(shli, es, v1, v3, d2);
2149 gen_gvec_fn_2i(rotli, es, v1, v3, d2);
2152 gen_gvec_fn_2i(sari, es, v1, v3, d2);
2155 gen_gvec_fn_2i(shri, es, v1, v3, d2);
2166 gen_gvec_fn_2s(shls, es, v1, v3, shift);
2169 gen_gvec_fn_2s(rotls, es, v1, v3, shift);
2172 gen_gvec_fn_2s(sars, es, v1, v3, shift);
2175 gen_gvec_fn_2s(shrs, es, v1, v3, shift);
2192 get_field(s, v3), 0, gen_ve2);
2196 read_vec_element_i64(shift, get_field(s, v3), 7, ES_8);
2242 read_vec_element_i64(t2, get_field(s, v3), 0, ES_64);
2245 read_vec_element_i64(t1, get_field(s, v3), 0, ES_64);
2246 read_vec_element_i64(t2, get_field(s, v3), 1, ES_64);
2272 read_vec_element_i64(t1, get_field(s, v3), 0, ES_64);
2273 read_vec_element_i64(t2, get_field(s, v3), 1, ES_64);
2292 get_field(s, v2), get_field(s, v3));
2296 get_field(s, v3));
2341 get_field(s, v2), get_field(s, v3));
2345 get_field(s, v3), &g[es]);
2368 get_field(s, v2), get_field(s, v3),
2392 get_field(s, v2), get_field(s, v3),
2414 read_vec_element_i64(sum, get_field(s, v3), max_idx, es);
2442 read_vec_element_i64(suml, get_field(s, v3), max_idx, es);
2469 read_vec_element_i32(sum, get_field(s, v3), max_idx, es);
2491 static gen_helper_gvec_3 * const g[3] = {
2496 static gen_helper_gvec_3_ptr * const g_cc[3] = {
2508 get_field(s, v3), tcg_env, m5, g_cc[es]);
2512 get_field(s, v3), m5, g[es]);
2521 static gen_helper_gvec_3 * const g[3] = {
2526 static gen_helper_gvec_3_ptr * const g_cc[3] = {
2539 get_field(s, v3), tcg_env, m5, g_cc[es]);
2543 get_field(s, v3), m5, g[es]);
2552 static gen_helper_gvec_3 * const g[3] = {
2557 static gen_helper_gvec_3_ptr * const g_cc[3] = {
2570 get_field(s, v3), tcg_env, m5, g_cc[es]);
2574 get_field(s, v3), m5, g[es]);
2583 static gen_helper_gvec_2 * const g[3] = {
2588 static gen_helper_gvec_2_ptr * const g_cc[3] = {
2614 static gen_helper_gvec_4 * const g[3] = {
2619 static gen_helper_gvec_4 * const g_rt[3] = {
2624 static gen_helper_gvec_4_ptr * const g_cc[3] = {
2629 static gen_helper_gvec_4_ptr * const g_cc_rt[3] = {
2643 get_field(s, v3), get_field(s, v4),
2647 get_field(s, v3), get_field(s, v4),
2654 get_field(s, v3), get_field(s, v4),
2658 get_field(s, v3), get_field(s, v4),
2669 static const helper_vstrs fns[3][2] = {
2684 get_field(s, v3), get_field(s, v4),
2777 if (!fn || extract32(m5, 0, 3)) {
2783 get_field(s, v3), tcg_env, m5, fn);
2889 if (!fn || extract32(m5, 0, 2) || extract32(m6, 1, 3) ||
2895 gen_gvec_3_ptr(get_field(s, v1), get_field(s, v2), get_field(s, v3),
3034 if (!fn || extract32(m4, 0, 3)) {
3082 gen_gvec_3_ptr(get_field(s, v1), get_field(s, v2), get_field(s, v3),
3166 if (!fn || extract32(m5, 0, 3)) {
3172 get_field(s, v3), get_field(s, v4), tcg_env, m5, fn);
3183 const bool se = extract32(m4, 3, 1);
3187 extract32(m4, 0, 3) || m5 > 2) {
3289 if (!fn || extract32(m4, 0, 3)) {
3323 if (!fn || extract32(m5, 0, 3)) {