/* -*- buffer-read-only: t -*- */ /* Generated automatically by geniterators.sh from iterators.md. */ #ifndef GCC_AARCH64_ITERATORS_H #define GCC_AARCH64_ITERATORS_H #define BUILTIN_GPI(T, N, MAP) \ VAR2 (T, N, MAP, si, di) #define BUILTIN_GPI_I16(T, N, MAP) \ VAR3 (T, N, MAP, hi, si, di) #define BUILTIN_SHORT(T, N, MAP) \ VAR2 (T, N, MAP, qi, hi) #define BUILTIN_ALLI(T, N, MAP) \ VAR4 (T, N, MAP, qi, hi, si, di) #define BUILTIN_ALLI_TI(T, N, MAP) \ VAR5 (T, N, MAP, qi, hi, si, di, ti) #define BUILTIN_ALLX(T, N, MAP) \ VAR3 (T, N, MAP, qi, hi, si) #define BUILTIN_GPF(T, N, MAP) \ VAR2 (T, N, MAP, sf, df) #define BUILTIN_GPF_F16(T, N, MAP) \ VAR3 (T, N, MAP, hf, sf, df) #define BUILTIN_GPF_HF(T, N, MAP) \ VAR3 (T, N, MAP, hf, sf, df) #define BUILTIN_GPF_TF_F16(T, N, MAP) \ VAR4 (T, N, MAP, hf, sf, df, tf) #define BUILTIN_VDF(T, N, MAP) \ VAR2 (T, N, MAP, v2sf, v4hf) #define BUILTIN_GPF_TF(T, N, MAP) \ VAR3 (T, N, MAP, sf, df, tf) #define BUILTIN_VDQ_I(T, N, MAP) \ VAR7 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v2si, v4si, v2di) #define BUILTIN_VSDQ_I(T, N, MAP) \ VAR11 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v2si, v4si, v2di, qi, hi, si, di) #define BUILTIN_VSDQ_I_DI(T, N, MAP) \ VAR8 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v2si, v4si, v2di, di) #define BUILTIN_VD(T, N, MAP) \ VAR5 (T, N, MAP, v8qi, v4hi, v4hf, v2si, v2sf) #define BUILTIN_DREG(T, N, MAP) \ VAR6 (T, N, MAP, v8qi, v4hi, v4hf, v2si, v2sf, df) #define BUILTIN_DREG2(T, N, MAP) \ VAR6 (T, N, MAP, v8qi, v4hi, v4hf, v2si, v2sf, df) #define BUILTIN_VD_BHSI(T, N, MAP) \ VAR3 (T, N, MAP, v8qi, v4hi, v2si) #define BUILTIN_VDQ_BHSI(T, N, MAP) \ VAR6 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v2si, v4si) #define BUILTIN_VQ(T, N, MAP) \ VAR7 (T, N, MAP, v16qi, v8hi, v4si, v2di, v8hf, v4sf, v2df) #define BUILTIN_VQ2(T, N, MAP) \ VAR7 (T, N, MAP, v16qi, v8hi, v4si, v2di, v8hf, v4sf, v2df) #define BUILTIN_VQ_I(T, N, MAP) \ VAR4 (T, N, MAP, v16qi, v8hi, v4si, v2di) #define BUILTIN_VQ_NO2E(T, N, MAP) \ VAR5 (T, N, MAP, v16qi, v8hi, v4si, v8hf, v4sf) #define BUILTIN_VQ_2E(T, N, MAP) \ VAR2 (T, N, MAP, v2di, v2df) #define BUILTIN_P(T, N, MAP) \ VAR2 (T, N, MAP, si, di) #define BUILTIN_PTR(T, N, MAP) \ VAR2 (T, N, MAP, si, di) #define BUILTIN_VDQF_F16(T, N, MAP) \ VAR5 (T, N, MAP, v4hf, v8hf, v2sf, v4sf, v2df) #define BUILTIN_VDQF(T, N, MAP) \ VAR3 (T, N, MAP, v2sf, v4sf, v2df) #define BUILTIN_VHSDF(T, N, MAP) \ VAR5 (T, N, MAP, v4hf, v8hf, v2sf, v4sf, v2df) #define BUILTIN_VHSDF_DF(T, N, MAP) \ VAR6 (T, N, MAP, v4hf, v8hf, v2sf, v4sf, v2df, df) #define BUILTIN_VHSDF_HSDF(T, N, MAP) \ VAR8 (T, N, MAP, v4hf, v8hf, v2sf, v4sf, v2df, hf, sf, df) #define BUILTIN_VDQSF(T, N, MAP) \ VAR2 (T, N, MAP, v2sf, v4sf) #define BUILTIN_VQ_HSF(T, N, MAP) \ VAR2 (T, N, MAP, v8hf, v4sf) #define BUILTIN_VDQF_COND(T, N, MAP) \ VAR6 (T, N, MAP, v2sf, v2si, v4sf, v4si, v2df, v2di) #define BUILTIN_VALLF(T, N, MAP) \ VAR5 (T, N, MAP, v2sf, v4sf, v2df, sf, df) #define BUILTIN_V2F(T, N, MAP) \ VAR2 (T, N, MAP, v2sf, v2df) #define BUILTIN_VALL(T, N, MAP) \ VAR10 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v2si, v4si, v2di, v2sf, v4sf, v2df) #define BUILTIN_VALL_F16(T, N, MAP) \ VAR12 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v2si, v4si, v2di, v4hf, v8hf, v2sf, v4sf, v2df) #define BUILTIN_VALL_F16_NO_V2Q(T, N, MAP) \ VAR10 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v2si, v4si, v4hf, v8hf, v2sf, v4sf) #define BUILTIN_VALLDI(T, N, MAP) \ VAR11 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v2si, v4si, v2di, v2sf, v4sf, v2df, di) #define BUILTIN_VALLDI_F16(T, N, MAP) \ VAR13 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v2si, v4si, v2di, v4hf, v8hf, v2sf, v4sf, v2df, di) #define BUILTIN_VALLDIF(T, N, MAP) \ VAR14 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v2si, v4si, v2di, v4hf, v8hf, v2sf, v4sf, v2df, di, df) #define BUILTIN_VDQV(T, N, MAP) \ VAR6 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v4si, v2di) #define BUILTIN_VDQV_S(T, N, MAP) \ VAR5 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v4si) #define BUILTIN_VDN(T, N, MAP) \ VAR3 (T, N, MAP, v4hi, v2si, di) #define BUILTIN_VQN(T, N, MAP) \ VAR3 (T, N, MAP, v8hi, v4si, v2di) #define BUILTIN_VSQN_HSDI(T, N, MAP) \ VAR6 (T, N, MAP, v8hi, v4si, v2di, hi, si, di) #define BUILTIN_VQW(T, N, MAP) \ VAR3 (T, N, MAP, v16qi, v8hi, v4si) #define BUILTIN_VDC(T, N, MAP) \ VAR7 (T, N, MAP, v8qi, v4hi, v4hf, v2si, v2sf, di, df) #define BUILTIN_VDQIF(T, N, MAP) \ VAR9 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v2si, v4si, v2sf, v4sf, v2df) #define BUILTIN_VDQIF_F16(T, N, MAP) \ VAR11 (T, N, MAP, v8qi, v16qi, v4hi, v8hi, v2si, v4si, v4hf, v8hf, v2sf, v4sf, v2df) #define BUILTIN_VDQ_SI(T, N, MAP) \ VAR2 (T, N, MAP, v2si, v4si) #define BUILTIN_VDQ_SDI(T, N, MAP) \ VAR3 (T, N, MAP, v2si, v4si, v2di) #define BUILTIN_VDQ_HSDI(T, N, MAP) \ VAR5 (T, N, MAP, v4hi, v8hi, v2si, v4si, v2di) #define BUILTIN_VSDQ_SDI(T, N, MAP) \ VAR5 (T, N, MAP, v2si, v4si, v2di, si, di) #define BUILTIN_VSDQ_HSDI(T, N, MAP) \ VAR8 (T, N, MAP, v4hi, v8hi, v2si, v4si, v2di, hi, si, di) #define BUILTIN_VDQQH(T, N, MAP) \ VAR4 (T, N, MAP, v8qi, v16qi, v4hi, v8hi) #define BUILTIN_VDQHS(T, N, MAP) \ VAR4 (T, N, MAP, v4hi, v8hi, v2si, v4si) #define BUILTIN_VDQHSD(T, N, MAP) \ VAR5 (T, N, MAP, v4hi, v8hi, v2si, v4si, v2di) #define BUILTIN_VSDQ_HSI(T, N, MAP) \ VAR6 (T, N, MAP, v4hi, v8hi, v2si, v4si, hi, si) #define BUILTIN_VSD_HSI(T, N, MAP) \ VAR4 (T, N, MAP, v4hi, v2si, hi, si) #define BUILTIN_VD_HSI(T, N, MAP) \ VAR2 (T, N, MAP, v4hi, v2si) #define BUILTIN_SD_HSI(T, N, MAP) \ VAR2 (T, N, MAP, hi, si) #define BUILTIN_VQ_HSI(T, N, MAP) \ VAR2 (T, N, MAP, v8hi, v4si) #define BUILTIN_VB(T, N, MAP) \ VAR2 (T, N, MAP, v8qi, v16qi) #define BUILTIN_VS(T, N, MAP) \ VAR2 (T, N, MAP, v2si, v4si) #define BUILTIN_TX(T, N, MAP) \ VAR2 (T, N, MAP, ti, tf) #define BUILTIN_VSTRUCT(T, N, MAP) \ VAR3 (T, N, MAP, oi, ci, xi) #define BUILTIN_DX(T, N, MAP) \ VAR2 (T, N, MAP, di, df) #define BUILTIN_DX2(T, N, MAP) \ VAR2 (T, N, MAP, di, df) #define BUILTIN_SX(T, N, MAP) \ VAR2 (T, N, MAP, si, sf) #define BUILTIN_SX2(T, N, MAP) \ VAR2 (T, N, MAP, si, sf) #define BUILTIN_DSX(T, N, MAP) \ VAR4 (T, N, MAP, df, di, sf, si) #define BUILTIN_VMUL(T, N, MAP) \ VAR9 (T, N, MAP, v4hi, v8hi, v2si, v4si, v4hf, v8hf, v2sf, v4sf, v2df) #define BUILTIN_VMUL_CHANGE_NLANES(T, N, MAP) \ VAR6 (T, N, MAP, v4hi, v8hi, v2si, v4si, v2sf, v4sf) #endif /* GCC_AARCH64_ITERATORS_H */