1944eea96SRichard Henderson DEF_HELPER_FLAGS_2(div_i32, TCG_CALL_NO_RWG_SE, s32, s32, s32) 2944eea96SRichard Henderson DEF_HELPER_FLAGS_2(rem_i32, TCG_CALL_NO_RWG_SE, s32, s32, s32) 3944eea96SRichard Henderson DEF_HELPER_FLAGS_2(divu_i32, TCG_CALL_NO_RWG_SE, i32, i32, i32) 4944eea96SRichard Henderson DEF_HELPER_FLAGS_2(remu_i32, TCG_CALL_NO_RWG_SE, i32, i32, i32) 596e132e2SBlue Swirl 6944eea96SRichard Henderson DEF_HELPER_FLAGS_2(div_i64, TCG_CALL_NO_RWG_SE, s64, s64, s64) 7944eea96SRichard Henderson DEF_HELPER_FLAGS_2(rem_i64, TCG_CALL_NO_RWG_SE, s64, s64, s64) 8944eea96SRichard Henderson DEF_HELPER_FLAGS_2(divu_i64, TCG_CALL_NO_RWG_SE, i64, i64, i64) 9944eea96SRichard Henderson DEF_HELPER_FLAGS_2(remu_i64, TCG_CALL_NO_RWG_SE, i64, i64, i64) 1031d66551SAurelien Jarno 11944eea96SRichard Henderson DEF_HELPER_FLAGS_2(shl_i64, TCG_CALL_NO_RWG_SE, i64, i64, i64) 12944eea96SRichard Henderson DEF_HELPER_FLAGS_2(shr_i64, TCG_CALL_NO_RWG_SE, i64, i64, i64) 13944eea96SRichard Henderson DEF_HELPER_FLAGS_2(sar_i64, TCG_CALL_NO_RWG_SE, s64, s64, s64) 1496e132e2SBlue Swirl 15944eea96SRichard Henderson DEF_HELPER_FLAGS_2(mulsh_i64, TCG_CALL_NO_RWG_SE, s64, s64, s64) 16944eea96SRichard Henderson DEF_HELPER_FLAGS_2(muluh_i64, TCG_CALL_NO_RWG_SE, i64, i64, i64) 17c482cb11SRichard Henderson 180e28d006SRichard Henderson DEF_HELPER_FLAGS_2(clz_i32, TCG_CALL_NO_RWG_SE, i32, i32, i32) 190e28d006SRichard Henderson DEF_HELPER_FLAGS_2(ctz_i32, TCG_CALL_NO_RWG_SE, i32, i32, i32) 200e28d006SRichard Henderson DEF_HELPER_FLAGS_2(clz_i64, TCG_CALL_NO_RWG_SE, i64, i64, i64) 210e28d006SRichard Henderson DEF_HELPER_FLAGS_2(ctz_i64, TCG_CALL_NO_RWG_SE, i64, i64, i64) 22086920c2SRichard Henderson DEF_HELPER_FLAGS_1(clrsb_i32, TCG_CALL_NO_RWG_SE, i32, i32) 23086920c2SRichard Henderson DEF_HELPER_FLAGS_1(clrsb_i64, TCG_CALL_NO_RWG_SE, i64, i64) 24a768e4e9SRichard Henderson DEF_HELPER_FLAGS_1(ctpop_i32, TCG_CALL_NO_RWG_SE, i32, i32) 25a768e4e9SRichard Henderson DEF_HELPER_FLAGS_1(ctpop_i64, TCG_CALL_NO_RWG_SE, i64, i64) 260e28d006SRichard Henderson 277f11636dSEmilio G. Cota DEF_HELPER_FLAGS_1(lookup_tb_ptr, TCG_CALL_NO_WG_SE, ptr, env) 28cedbcb01SEmilio G. Cota 29df79b996SRichard Henderson DEF_HELPER_FLAGS_1(exit_atomic, TCG_CALL_NO_WG, noreturn, env) 30df79b996SRichard Henderson 31c482cb11SRichard Henderson #ifdef CONFIG_SOFTMMU 32c482cb11SRichard Henderson 33c482cb11SRichard Henderson DEF_HELPER_FLAGS_5(atomic_cmpxchgb, TCG_CALL_NO_WG, 34c482cb11SRichard Henderson i32, env, tl, i32, i32, i32) 35c482cb11SRichard Henderson DEF_HELPER_FLAGS_5(atomic_cmpxchgw_be, TCG_CALL_NO_WG, 36c482cb11SRichard Henderson i32, env, tl, i32, i32, i32) 37c482cb11SRichard Henderson DEF_HELPER_FLAGS_5(atomic_cmpxchgw_le, TCG_CALL_NO_WG, 38c482cb11SRichard Henderson i32, env, tl, i32, i32, i32) 39df79b996SRichard Henderson DEF_HELPER_FLAGS_5(atomic_cmpxchgl_be, TCG_CALL_NO_WG, 40df79b996SRichard Henderson i32, env, tl, i32, i32, i32) 41c482cb11SRichard Henderson DEF_HELPER_FLAGS_5(atomic_cmpxchgl_le, TCG_CALL_NO_WG, 42c482cb11SRichard Henderson i32, env, tl, i32, i32, i32) 43df79b996SRichard Henderson #ifdef CONFIG_ATOMIC64 44df79b996SRichard Henderson DEF_HELPER_FLAGS_5(atomic_cmpxchgq_be, TCG_CALL_NO_WG, 45df79b996SRichard Henderson i64, env, tl, i64, i64, i32) 46c482cb11SRichard Henderson DEF_HELPER_FLAGS_5(atomic_cmpxchgq_le, TCG_CALL_NO_WG, 47c482cb11SRichard Henderson i64, env, tl, i64, i64, i32) 48df79b996SRichard Henderson #endif 49c482cb11SRichard Henderson 50df79b996SRichard Henderson #ifdef CONFIG_ATOMIC64 51c482cb11SRichard Henderson #define GEN_ATOMIC_HELPERS(NAME) \ 52c482cb11SRichard Henderson DEF_HELPER_FLAGS_4(glue(glue(atomic_, NAME), b), \ 53c482cb11SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32, i32) \ 54c482cb11SRichard Henderson DEF_HELPER_FLAGS_4(glue(glue(atomic_, NAME), w_le), \ 55c482cb11SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32, i32) \ 56c482cb11SRichard Henderson DEF_HELPER_FLAGS_4(glue(glue(atomic_, NAME), w_be), \ 57c482cb11SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32, i32) \ 58c482cb11SRichard Henderson DEF_HELPER_FLAGS_4(glue(glue(atomic_, NAME), l_le), \ 59c482cb11SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32, i32) \ 60c482cb11SRichard Henderson DEF_HELPER_FLAGS_4(glue(glue(atomic_, NAME), l_be), \ 61c482cb11SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32, i32) \ 62c482cb11SRichard Henderson DEF_HELPER_FLAGS_4(glue(glue(atomic_, NAME), q_le), \ 63c482cb11SRichard Henderson TCG_CALL_NO_WG, i64, env, tl, i64, i32) \ 64c482cb11SRichard Henderson DEF_HELPER_FLAGS_4(glue(glue(atomic_, NAME), q_be), \ 65c482cb11SRichard Henderson TCG_CALL_NO_WG, i64, env, tl, i64, i32) 66df79b996SRichard Henderson #else 67df79b996SRichard Henderson #define GEN_ATOMIC_HELPERS(NAME) \ 68df79b996SRichard Henderson DEF_HELPER_FLAGS_4(glue(glue(atomic_, NAME), b), \ 69df79b996SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32, i32) \ 70df79b996SRichard Henderson DEF_HELPER_FLAGS_4(glue(glue(atomic_, NAME), w_le), \ 71df79b996SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32, i32) \ 72df79b996SRichard Henderson DEF_HELPER_FLAGS_4(glue(glue(atomic_, NAME), w_be), \ 73df79b996SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32, i32) \ 74df79b996SRichard Henderson DEF_HELPER_FLAGS_4(glue(glue(atomic_, NAME), l_le), \ 75df79b996SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32, i32) \ 76df79b996SRichard Henderson DEF_HELPER_FLAGS_4(glue(glue(atomic_, NAME), l_be), \ 77df79b996SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32, i32) 78df79b996SRichard Henderson #endif /* CONFIG_ATOMIC64 */ 79c482cb11SRichard Henderson 80c482cb11SRichard Henderson #else 81c482cb11SRichard Henderson 82c482cb11SRichard Henderson DEF_HELPER_FLAGS_4(atomic_cmpxchgb, TCG_CALL_NO_WG, i32, env, tl, i32, i32) 83c482cb11SRichard Henderson DEF_HELPER_FLAGS_4(atomic_cmpxchgw_be, TCG_CALL_NO_WG, i32, env, tl, i32, i32) 84c482cb11SRichard Henderson DEF_HELPER_FLAGS_4(atomic_cmpxchgw_le, TCG_CALL_NO_WG, i32, env, tl, i32, i32) 85df79b996SRichard Henderson DEF_HELPER_FLAGS_4(atomic_cmpxchgl_be, TCG_CALL_NO_WG, i32, env, tl, i32, i32) 86c482cb11SRichard Henderson DEF_HELPER_FLAGS_4(atomic_cmpxchgl_le, TCG_CALL_NO_WG, i32, env, tl, i32, i32) 87df79b996SRichard Henderson #ifdef CONFIG_ATOMIC64 88df79b996SRichard Henderson DEF_HELPER_FLAGS_4(atomic_cmpxchgq_be, TCG_CALL_NO_WG, i64, env, tl, i64, i64) 89c482cb11SRichard Henderson DEF_HELPER_FLAGS_4(atomic_cmpxchgq_le, TCG_CALL_NO_WG, i64, env, tl, i64, i64) 90df79b996SRichard Henderson #endif 91c482cb11SRichard Henderson 92df79b996SRichard Henderson #ifdef CONFIG_ATOMIC64 93c482cb11SRichard Henderson #define GEN_ATOMIC_HELPERS(NAME) \ 94c482cb11SRichard Henderson DEF_HELPER_FLAGS_3(glue(glue(atomic_, NAME), b), \ 95c482cb11SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32) \ 96c482cb11SRichard Henderson DEF_HELPER_FLAGS_3(glue(glue(atomic_, NAME), w_le), \ 97c482cb11SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32) \ 98c482cb11SRichard Henderson DEF_HELPER_FLAGS_3(glue(glue(atomic_, NAME), w_be), \ 99c482cb11SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32) \ 100c482cb11SRichard Henderson DEF_HELPER_FLAGS_3(glue(glue(atomic_, NAME), l_le), \ 101c482cb11SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32) \ 102c482cb11SRichard Henderson DEF_HELPER_FLAGS_3(glue(glue(atomic_, NAME), l_be), \ 103c482cb11SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32) \ 104c482cb11SRichard Henderson DEF_HELPER_FLAGS_3(glue(glue(atomic_, NAME), q_le), \ 105c482cb11SRichard Henderson TCG_CALL_NO_WG, i64, env, tl, i64) \ 106c482cb11SRichard Henderson DEF_HELPER_FLAGS_3(glue(glue(atomic_, NAME), q_be), \ 107c482cb11SRichard Henderson TCG_CALL_NO_WG, i64, env, tl, i64) 108df79b996SRichard Henderson #else 109df79b996SRichard Henderson #define GEN_ATOMIC_HELPERS(NAME) \ 110df79b996SRichard Henderson DEF_HELPER_FLAGS_3(glue(glue(atomic_, NAME), b), \ 111df79b996SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32) \ 112df79b996SRichard Henderson DEF_HELPER_FLAGS_3(glue(glue(atomic_, NAME), w_le), \ 113df79b996SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32) \ 114df79b996SRichard Henderson DEF_HELPER_FLAGS_3(glue(glue(atomic_, NAME), w_be), \ 115df79b996SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32) \ 116df79b996SRichard Henderson DEF_HELPER_FLAGS_3(glue(glue(atomic_, NAME), l_le), \ 117df79b996SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32) \ 118df79b996SRichard Henderson DEF_HELPER_FLAGS_3(glue(glue(atomic_, NAME), l_be), \ 119df79b996SRichard Henderson TCG_CALL_NO_WG, i32, env, tl, i32) 120df79b996SRichard Henderson #endif /* CONFIG_ATOMIC64 */ 121c482cb11SRichard Henderson 122c482cb11SRichard Henderson #endif /* CONFIG_SOFTMMU */ 123c482cb11SRichard Henderson 124c482cb11SRichard Henderson GEN_ATOMIC_HELPERS(fetch_add) 125c482cb11SRichard Henderson GEN_ATOMIC_HELPERS(fetch_and) 126c482cb11SRichard Henderson GEN_ATOMIC_HELPERS(fetch_or) 127c482cb11SRichard Henderson GEN_ATOMIC_HELPERS(fetch_xor) 1285507c2bfSRichard Henderson GEN_ATOMIC_HELPERS(fetch_smin) 1295507c2bfSRichard Henderson GEN_ATOMIC_HELPERS(fetch_umin) 1305507c2bfSRichard Henderson GEN_ATOMIC_HELPERS(fetch_smax) 1315507c2bfSRichard Henderson GEN_ATOMIC_HELPERS(fetch_umax) 132c482cb11SRichard Henderson 133c482cb11SRichard Henderson GEN_ATOMIC_HELPERS(add_fetch) 134c482cb11SRichard Henderson GEN_ATOMIC_HELPERS(and_fetch) 135c482cb11SRichard Henderson GEN_ATOMIC_HELPERS(or_fetch) 136c482cb11SRichard Henderson GEN_ATOMIC_HELPERS(xor_fetch) 1375507c2bfSRichard Henderson GEN_ATOMIC_HELPERS(smin_fetch) 1385507c2bfSRichard Henderson GEN_ATOMIC_HELPERS(umin_fetch) 1395507c2bfSRichard Henderson GEN_ATOMIC_HELPERS(smax_fetch) 1405507c2bfSRichard Henderson GEN_ATOMIC_HELPERS(umax_fetch) 141c482cb11SRichard Henderson 142c482cb11SRichard Henderson GEN_ATOMIC_HELPERS(xchg) 143c482cb11SRichard Henderson 144c482cb11SRichard Henderson #undef GEN_ATOMIC_HELPERS 145db432672SRichard Henderson 146db432672SRichard Henderson DEF_HELPER_FLAGS_3(gvec_mov, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 147db432672SRichard Henderson 148db432672SRichard Henderson DEF_HELPER_FLAGS_3(gvec_dup8, TCG_CALL_NO_RWG, void, ptr, i32, i32) 149db432672SRichard Henderson DEF_HELPER_FLAGS_3(gvec_dup16, TCG_CALL_NO_RWG, void, ptr, i32, i32) 150db432672SRichard Henderson DEF_HELPER_FLAGS_3(gvec_dup32, TCG_CALL_NO_RWG, void, ptr, i32, i32) 151db432672SRichard Henderson DEF_HELPER_FLAGS_3(gvec_dup64, TCG_CALL_NO_RWG, void, ptr, i32, i64) 152db432672SRichard Henderson 153db432672SRichard Henderson DEF_HELPER_FLAGS_4(gvec_add8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 154db432672SRichard Henderson DEF_HELPER_FLAGS_4(gvec_add16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 155db432672SRichard Henderson DEF_HELPER_FLAGS_4(gvec_add32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 156db432672SRichard Henderson DEF_HELPER_FLAGS_4(gvec_add64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 157db432672SRichard Henderson 15822fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_adds8, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 15922fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_adds16, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 16022fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_adds32, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 16122fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_adds64, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 16222fc3527SRichard Henderson 163db432672SRichard Henderson DEF_HELPER_FLAGS_4(gvec_sub8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 164db432672SRichard Henderson DEF_HELPER_FLAGS_4(gvec_sub16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 165db432672SRichard Henderson DEF_HELPER_FLAGS_4(gvec_sub32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 166db432672SRichard Henderson DEF_HELPER_FLAGS_4(gvec_sub64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 167db432672SRichard Henderson 16822fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_subs8, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 16922fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_subs16, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 17022fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_subs32, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 17122fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_subs64, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 17222fc3527SRichard Henderson 1733774030aSRichard Henderson DEF_HELPER_FLAGS_4(gvec_mul8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 1743774030aSRichard Henderson DEF_HELPER_FLAGS_4(gvec_mul16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 1753774030aSRichard Henderson DEF_HELPER_FLAGS_4(gvec_mul32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 1763774030aSRichard Henderson DEF_HELPER_FLAGS_4(gvec_mul64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 1773774030aSRichard Henderson 17822fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_muls8, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 17922fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_muls16, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 18022fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_muls32, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 18122fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_muls64, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 18222fc3527SRichard Henderson 183f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ssadd8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 184f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ssadd16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 185f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ssadd32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 186f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ssadd64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 187f49b12c6SRichard Henderson 188f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_sssub8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 189f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_sssub16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 190f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_sssub32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 191f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_sssub64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 192f49b12c6SRichard Henderson 193f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_usadd8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 194f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_usadd16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 195f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_usadd32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 196f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_usadd64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 197f49b12c6SRichard Henderson 198f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ussub8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 199f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ussub16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 200f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ussub32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 201f49b12c6SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ussub64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 202f49b12c6SRichard Henderson 203dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_smin8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 204dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_smin16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 205dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_smin32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 206dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_smin64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 207dd0a0fcdSRichard Henderson 208dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_smax8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 209dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_smax16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 210dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_smax32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 211dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_smax64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 212dd0a0fcdSRichard Henderson 213dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_umin8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 214dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_umin16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 215dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_umin32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 216dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_umin64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 217dd0a0fcdSRichard Henderson 218dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_umax8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 219dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_umax16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 220dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_umax32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 221dd0a0fcdSRichard Henderson DEF_HELPER_FLAGS_4(gvec_umax64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 222dd0a0fcdSRichard Henderson 223db432672SRichard Henderson DEF_HELPER_FLAGS_3(gvec_neg8, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 224db432672SRichard Henderson DEF_HELPER_FLAGS_3(gvec_neg16, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 225db432672SRichard Henderson DEF_HELPER_FLAGS_3(gvec_neg32, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 226db432672SRichard Henderson DEF_HELPER_FLAGS_3(gvec_neg64, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 227db432672SRichard Henderson 228bcefc902SRichard Henderson DEF_HELPER_FLAGS_3(gvec_abs8, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 229bcefc902SRichard Henderson DEF_HELPER_FLAGS_3(gvec_abs16, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 230bcefc902SRichard Henderson DEF_HELPER_FLAGS_3(gvec_abs32, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 231bcefc902SRichard Henderson DEF_HELPER_FLAGS_3(gvec_abs64, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 232bcefc902SRichard Henderson 233db432672SRichard Henderson DEF_HELPER_FLAGS_3(gvec_not, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 234db432672SRichard Henderson DEF_HELPER_FLAGS_4(gvec_and, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 235db432672SRichard Henderson DEF_HELPER_FLAGS_4(gvec_or, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 236db432672SRichard Henderson DEF_HELPER_FLAGS_4(gvec_xor, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 237db432672SRichard Henderson DEF_HELPER_FLAGS_4(gvec_andc, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 238db432672SRichard Henderson DEF_HELPER_FLAGS_4(gvec_orc, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 239f550805dSRichard Henderson DEF_HELPER_FLAGS_4(gvec_nand, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 240f550805dSRichard Henderson DEF_HELPER_FLAGS_4(gvec_nor, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 241f550805dSRichard Henderson DEF_HELPER_FLAGS_4(gvec_eqv, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 242d0ec9796SRichard Henderson 24322fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ands, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 24422fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_xors, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 24522fc3527SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ors, TCG_CALL_NO_RWG, void, ptr, ptr, i64, i32) 24622fc3527SRichard Henderson 247d0ec9796SRichard Henderson DEF_HELPER_FLAGS_3(gvec_shl8i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 248d0ec9796SRichard Henderson DEF_HELPER_FLAGS_3(gvec_shl16i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 249d0ec9796SRichard Henderson DEF_HELPER_FLAGS_3(gvec_shl32i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 250d0ec9796SRichard Henderson DEF_HELPER_FLAGS_3(gvec_shl64i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 251d0ec9796SRichard Henderson 252d0ec9796SRichard Henderson DEF_HELPER_FLAGS_3(gvec_shr8i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 253d0ec9796SRichard Henderson DEF_HELPER_FLAGS_3(gvec_shr16i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 254d0ec9796SRichard Henderson DEF_HELPER_FLAGS_3(gvec_shr32i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 255d0ec9796SRichard Henderson DEF_HELPER_FLAGS_3(gvec_shr64i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 256d0ec9796SRichard Henderson 257d0ec9796SRichard Henderson DEF_HELPER_FLAGS_3(gvec_sar8i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 258d0ec9796SRichard Henderson DEF_HELPER_FLAGS_3(gvec_sar16i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 259d0ec9796SRichard Henderson DEF_HELPER_FLAGS_3(gvec_sar32i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 260d0ec9796SRichard Henderson DEF_HELPER_FLAGS_3(gvec_sar64i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 261212be173SRichard Henderson 262b0f7e744SRichard Henderson DEF_HELPER_FLAGS_3(gvec_rotl8i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 263b0f7e744SRichard Henderson DEF_HELPER_FLAGS_3(gvec_rotl16i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 264b0f7e744SRichard Henderson DEF_HELPER_FLAGS_3(gvec_rotl32i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 265b0f7e744SRichard Henderson DEF_HELPER_FLAGS_3(gvec_rotl64i, TCG_CALL_NO_RWG, void, ptr, ptr, i32) 266b0f7e744SRichard Henderson 2675ee5c14cSRichard Henderson DEF_HELPER_FLAGS_4(gvec_shl8v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 2685ee5c14cSRichard Henderson DEF_HELPER_FLAGS_4(gvec_shl16v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 2695ee5c14cSRichard Henderson DEF_HELPER_FLAGS_4(gvec_shl32v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 2705ee5c14cSRichard Henderson DEF_HELPER_FLAGS_4(gvec_shl64v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 2715ee5c14cSRichard Henderson 2725ee5c14cSRichard Henderson DEF_HELPER_FLAGS_4(gvec_shr8v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 2735ee5c14cSRichard Henderson DEF_HELPER_FLAGS_4(gvec_shr16v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 2745ee5c14cSRichard Henderson DEF_HELPER_FLAGS_4(gvec_shr32v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 2755ee5c14cSRichard Henderson DEF_HELPER_FLAGS_4(gvec_shr64v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 2765ee5c14cSRichard Henderson 2775ee5c14cSRichard Henderson DEF_HELPER_FLAGS_4(gvec_sar8v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 2785ee5c14cSRichard Henderson DEF_HELPER_FLAGS_4(gvec_sar16v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 2795ee5c14cSRichard Henderson DEF_HELPER_FLAGS_4(gvec_sar32v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 2805ee5c14cSRichard Henderson DEF_HELPER_FLAGS_4(gvec_sar64v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 2815ee5c14cSRichard Henderson 282*5d0ceda9SRichard Henderson DEF_HELPER_FLAGS_4(gvec_rotl8v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 283*5d0ceda9SRichard Henderson DEF_HELPER_FLAGS_4(gvec_rotl16v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 284*5d0ceda9SRichard Henderson DEF_HELPER_FLAGS_4(gvec_rotl32v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 285*5d0ceda9SRichard Henderson DEF_HELPER_FLAGS_4(gvec_rotl64v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 286*5d0ceda9SRichard Henderson 287*5d0ceda9SRichard Henderson DEF_HELPER_FLAGS_4(gvec_rotr8v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 288*5d0ceda9SRichard Henderson DEF_HELPER_FLAGS_4(gvec_rotr16v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 289*5d0ceda9SRichard Henderson DEF_HELPER_FLAGS_4(gvec_rotr32v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 290*5d0ceda9SRichard Henderson DEF_HELPER_FLAGS_4(gvec_rotr64v, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 291*5d0ceda9SRichard Henderson 292212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_eq8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 293212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_eq16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 294212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_eq32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 295212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_eq64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 296212be173SRichard Henderson 297212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ne8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 298212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ne16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 299212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ne32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 300212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ne64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 301212be173SRichard Henderson 302212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_lt8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 303212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_lt16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 304212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_lt32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 305212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_lt64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 306212be173SRichard Henderson 307212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_le8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 308212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_le16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 309212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_le32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 310212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_le64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 311212be173SRichard Henderson 312212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ltu8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 313212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ltu16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 314212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ltu32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 315212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_ltu64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 316212be173SRichard Henderson 317212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_leu8, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 318212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_leu16, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 319212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_leu32, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 320212be173SRichard Henderson DEF_HELPER_FLAGS_4(gvec_leu64, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32) 32138dc1294SRichard Henderson 32238dc1294SRichard Henderson DEF_HELPER_FLAGS_5(gvec_bitsel, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, ptr, i32) 323