From 0e171d5408feafcd56b97c831a99d14e544b98af Mon Sep 17 00:00:00 2001 From: Julia Koval Date: Tue, 17 Jan 2017 18:03:00 +0100 Subject: [PATCH] re PR target/76731 ([AVX512] _mm512_i32gather_epi32 and other scatter/gather routines have incorrect signature) PR target/76731 * config/i386/avx512fintrin.h (_mm512_i32gather_ps): Change __addr type to void const*. (_mm512_mask_i32gather_ps): Ditto. (_mm512_i32gather_pd): Ditto. (_mm512_mask_i32gather_pd): Ditto. (_mm512_i64gather_ps): Ditto. (_mm512_mask_i64gather_ps): Ditto. (_mm512_i64gather_pd): Ditto. (_mm512_mask_i64gather_pd): Ditto. (_mm512_i32gather_epi32): Ditto. (_mm512_mask_i32gather_epi32): Ditto. (_mm512_i32gather_epi64): Ditto. (_mm512_mask_i32gather_epi64): Ditto. (_mm512_i64gather_epi32): Ditto. (_mm512_mask_i64gather_epi32): Ditto. (_mm512_i64gather_epi64): Ditto. (_mm512_mask_i64gather_epi64): Ditto. (_mm512_i32scatter_ps): Change __addr type to void*. (_mm512_mask_i32scatter_ps): Ditto. (_mm512_i32scatter_pd): Ditto. (_mm512_mask_i32scatter_pd): Ditto. (_mm512_i64scatter_ps): Ditto. (_mm512_mask_i64scatter_ps): Ditto. (_mm512_i64scatter_pd): Ditto. (_mm512_mask_i64scatter_pd): Ditto. (_mm512_i32scatter_epi32): Ditto. (_mm512_mask_i32scatter_epi32): Ditto. (_mm512_i32scatter_epi64): Ditto. (_mm512_mask_i32scatter_epi64): Ditto. (_mm512_i64scatter_epi32): Ditto. (_mm512_mask_i64scatter_epi32): Ditto. (_mm512_i64scatter_epi64): Ditto. (_mm512_mask_i64scatter_epi64): Ditto. * config/i386/avx512pfintrin.h (_mm512_mask_prefetch_i32gather_pd): Change __addr type to void const*. (_mm512_mask_prefetch_i32gather_ps): Ditto. (_mm512_mask_prefetch_i64gather_pd): Ditto. (_mm512_mask_prefetch_i64gather_ps): Ditto. (_mm512_prefetch_i32scatter_pd): Change __addr type to void*. (_mm512_prefetch_i32scatter_ps): Ditto. (_mm512_mask_prefetch_i32scatter_pd): Ditto. (_mm512_mask_prefetch_i32scatter_ps): Ditto. (_mm512_prefetch_i64scatter_pd): Ditto. (_mm512_prefetch_i64scatter_ps): Ditto. (_mm512_mask_prefetch_i64scatter_pd): Ditto. (_mm512_mask_prefetch_i64scatter_ps): Ditto. * config/i386/avx512vlintrin.h (_mm256_mmask_i32gather_ps): Change __addr type to void const*. (_mm_mmask_i32gather_ps): Ditto. (_mm256_mmask_i32gather_pd): Ditto. (_mm_mmask_i32gather_pd): Ditto. (_mm256_mmask_i64gather_ps): Ditto. (_mm_mmask_i64gather_ps): Ditto. (_mm256_mmask_i64gather_pd): Ditto. (_mm_mmask_i64gather_pd): Ditto. (_mm256_mmask_i32gather_epi32): Ditto. (_mm_mmask_i32gather_epi32): Ditto. (_mm256_mmask_i32gather_epi64): Ditto. (_mm_mmask_i32gather_epi64): Ditto. (_mm256_mmask_i64gather_epi32): Ditto. (_mm_mmask_i64gather_epi32): Ditto. (_mm256_mmask_i64gather_epi64): Ditto. (_mm_mmask_i64gather_epi64): Ditto. (_mm256_i32scatter_ps): Change __addr type to void*. (_mm256_mask_i32scatter_ps): Ditto. (_mm_i32scatter_ps): Ditto. (_mm_mask_i32scatter_ps): Ditto. (_mm256_i32scatter_pd): Ditto. (_mm256_mask_i32scatter_pd): Ditto. (_mm_i32scatter_pd): Ditto. (_mm_mask_i32scatter_pd): Ditto. (_mm256_i64scatter_ps): Ditto. (_mm256_mask_i64scatter_ps): Ditto. (_mm_i64scatter_ps): Ditto. (_mm_mask_i64scatter_ps): Ditto. (_mm256_i64scatter_pd): Ditto. (_mm256_mask_i64scatter_pd): Ditto. (_mm_i64scatter_pd): Ditto. (_mm_mask_i64scatter_pd): Ditto. (_mm256_i32scatter_epi32): Ditto. (_mm256_mask_i32scatter_epi32): Ditto. (_mm_i32scatter_epi32): Ditto. (_mm_mask_i32scatter_epi32): Ditto. (_mm256_i32scatter_epi64): Ditto. (_mm256_mask_i32scatter_epi64): Ditto. (_mm_i32scatter_epi64): Ditto. (_mm_mask_i32scatter_epi64): Ditto. (_mm256_i64scatter_epi32): Ditto. (_mm256_mask_i64scatter_epi32): Ditto. (_mm_i64scatter_epi32): Ditto. (_mm_mask_i64scatter_epi32): Ditto. (_mm256_i64scatter_epi64): Ditto. (_mm256_mask_i64scatter_epi64): Ditto. (_mm_i64scatter_epi64): Ditto. (_mm_mask_i64scatter_epi64): Ditto. * config/i386/i386-builtin-types.def (V16SF_V16SF_PCFLOAT_V16SI_HI_INT) (V8DF_V8DF_PCDOUBLE_V8SI_QI_INT, V8SF_V8SF_PCFLOAT_V8DI_QI_INT) (V8DF_V8DF_PCDOUBLE_V8DI_QI_INT, V16SI_V16SI_PCINT_V16SI_HI_INT) (V8DI_V8DI_PCINT64_V8SI_QI_INT, V8SI_V8SI_PCINT_V8DI_QI_INT) (V8DI_V8DI_PCINT64_V8DI_QI_INT, V2DF_V2DF_PCDOUBLE_V4SI_QI_INT) (V4DF_V4DF_PCDOUBLE_V4SI_QI_INT, V2DF_V2DF_PCDOUBLE_V2DI_QI_INT) (V4DF_V4DF_PCDOUBLE_V4DI_QI_INT, V4SF_V4SF_PCFLOAT_V4SI_QI_INT) (V8SF_V8SF_PCFLOAT_V8SI_QI_INT, V4SF_V4SF_PCFLOAT_V2DI_QI_INT) (V4SF_V4SF_PCFLOAT_V4DI_QI_INT, V2DI_V2DI_PCINT64_V4SI_QI_INT) (V4DI_V4DI_PCINT64_V4SI_QI_INT, V2DI_V2DI_PCINT64_V2DI_QI_INT) (V4DI_V4DI_PCINT64_V4DI_QI_INT, V4SI_V4SI_PCINT_V4SI_QI_INT) (V8SI_V8SI_PCINT_V8SI_QI_INT, V4SI_V4SI_PCINT_V2DI_QI_INT) (V4SI_V4SI_PCINT_V4DI_QI_INT, VOID_PFLOAT_HI_V16SI_V16SF_INT) (VOID_PFLOAT_QI_V8SI_V8SF_INT, VOID_PFLOAT_QI_V4SI_V4SF_INT) (VOID_PDOUBLE_QI_V8SI_V8DF_INT, VOID_PDOUBLE_QI_V4SI_V4DF_INT) (VOID_PDOUBLE_QI_V4SI_V2DF_INT, VOID_PFLOAT_QI_V8DI_V8SF_INT) (VOID_PFLOAT_QI_V4DI_V4SF_INT, VOID_PFLOAT_QI_V2DI_V4SF_INT) (VOID_PDOUBLE_QI_V8DI_V8DF_INT, VOID_PDOUBLE_QI_V4DI_V4DF_INT) (VOID_PDOUBLE_QI_V2DI_V2DF_INT, VOID_PINT_HI_V16SI_V16SI_INT) (VOID_PINT_QI_V8SI_V8SI_INT, VOID_PINT_QI_V4SI_V4SI_INT) (VOID_PLONGLONG_QI_V8SI_V8DI_INT, VOID_PLONGLONG_QI_V4SI_V4DI_INT) (VOID_PLONGLONG_QI_V4SI_V2DI_INT, VOID_PINT_QI_V8DI_V8SI_INT) (VOID_PINT_QI_V4DI_V4SI_INT, VOID_PINT_QI_V2DI_V4SI_INT) (VOID_PLONGLONG_QI_V8DI_V8DI_INT, VOID_QI_V8SI_PCINT64_INT_INT) (VOID_PLONGLONG_QI_V4DI_V4DI_INT, VOID_PLONGLONG_QI_V2DI_V2DI_INT) (VOID_HI_V16SI_PCINT_INT_INT, VOID_QI_V8DI_PCINT64_INT_INT) (VOID_QI_V8DI_PCINT_INT_INT): Remove. (V16SF_V16SF_PCVOID_V16SI_HI_INT, V8DF_V8DF_PCVOID_V8SI_QI_INT) (V8SF_V8SF_PCVOID_V8DI_QI_INT, V8DF_V8DF_PCVOID_V8DI_QI_INT) (V16SI_V16SI_PCVOID_V16SI_HI_INT, V8DI_V8DI_PCVOID_V8SI_QI_INT) (V8SI_V8SI_PCVOID_V8DI_QI_INT, V8DI_V8DI_PCVOID_V8DI_QI_INT) (VOID_PVOID_HI_V16SI_V16SF_INT, VOID_PVOID_QI_V8SI_V8DF_INT) (VOID_PVOID_QI_V8DI_V8SF_INT, VOID_PVOID_QI_V8DI_V8DF_INT) (VOID_PVOID_HI_V16SI_V16SI_INT, VOID_PVOID_QI_V8SI_V8DI_INT) (VOID_PVOID_QI_V8DI_V8SI_INT, VOID_PVOID_QI_V8DI_V8DI_INT) (V2DF_V2DF_PCVOID_V4SI_QI_INT, V4DF_V4DF_PCVOID_V4SI_QI_INT) (V2DF_V2DF_PCVOID_V2DI_QI_INT, V4DF_V4DF_PCVOID_V4DI_QI_INT (V4SF_V4SF_PCVOID_V4SI_QI_INT, V8SF_V8SF_PCVOID_V8SI_QI_INT) (V4SF_V4SF_PCVOID_V2DI_QI_INT, V4SF_V4SF_PCVOID_V4DI_QI_INT) (V2DI_V2DI_PCVOID_V4SI_QI_INT, V4DI_V4DI_PCVOID_V4SI_QI_INT) (V2DI_V2DI_PCVOID_V2DI_QI_INT, V4DI_V4DI_PCVOID_V4DI_QI_INT) (V4SI_V4SI_PCVOID_V4SI_QI_INT, V8SI_V8SI_PCVOID_V8SI_QI_INT) (V4SI_V4SI_PCVOID_V2DI_QI_INT, V4SI_V4SI_PCVOID_V4DI_QI_INT) (VOID_PVOID_QI_V8SI_V8SF_INT, VOID_PVOID_QI_V4SI_V4SF_INT) (VOID_PVOID_QI_V4SI_V4DF_INT, VOID_PVOID_QI_V4SI_V2DF_INT) (VOID_PVOID_QI_V4DI_V4SF_INT, VOID_PVOID_QI_V2DI_V4SF_INT) (VOID_PVOID_QI_V4DI_V4DF_INT, VOID_PVOID_QI_V2DI_V2DF_INT) (VOID_PVOID_QI_V8SI_V8SI_INT, VOID_PVOID_QI_V4SI_V4SI_INT) (VOID_PVOID_QI_V4SI_V4DI_INT, VOID_PVOID_QI_V4SI_V2DI_INT) (VOID_PVOID_QI_V4DI_V4SI_INT, VOID_PVOID_QI_V2DI_V4SI_INT) (VOID_PVOID_QI_V4DI_V4DI_INT, VOID_PVOID_QI_V2DI_V2DI_INT) (VOID_QI_V8SI_PCVOID_INT_INT, VOID_HI_V16SI_PCVOID_INT_INT) (VOID_QI_V8DI_PCVOID_INT_INT): Add. * config/i386/i386.c (ix86_init_mmx_sse_builtins): Adjust builtin definitions accordingly. From-SVN: r244540 --- gcc/ChangeLog | 154 ++++++++++++++++++++ gcc/config/i386/avx512fintrin.h | 128 ++++++++--------- gcc/config/i386/avx512pfintrin.h | 80 +++++------ gcc/config/i386/avx512vlintrin.h | 192 ++++++++++++------------- gcc/config/i386/i386-builtin-types.def | 104 +++++++------- gcc/config/i386/i386.c | 112 +++++++-------- 6 files changed, 462 insertions(+), 308 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6530fd1de99..f311ece8a8a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,157 @@ +2017-01-17 Julia Koval + + PR target/76731 + * config/i386/avx512fintrin.h + (_mm512_i32gather_ps): Change __addr type to void const*. + (_mm512_mask_i32gather_ps): Ditto. + (_mm512_i32gather_pd): Ditto. + (_mm512_mask_i32gather_pd): Ditto. + (_mm512_i64gather_ps): Ditto. + (_mm512_mask_i64gather_ps): Ditto. + (_mm512_i64gather_pd): Ditto. + (_mm512_mask_i64gather_pd): Ditto. + (_mm512_i32gather_epi32): Ditto. + (_mm512_mask_i32gather_epi32): Ditto. + (_mm512_i32gather_epi64): Ditto. + (_mm512_mask_i32gather_epi64): Ditto. + (_mm512_i64gather_epi32): Ditto. + (_mm512_mask_i64gather_epi32): Ditto. + (_mm512_i64gather_epi64): Ditto. + (_mm512_mask_i64gather_epi64): Ditto. + (_mm512_i32scatter_ps): Change __addr type to void*. + (_mm512_mask_i32scatter_ps): Ditto. + (_mm512_i32scatter_pd): Ditto. + (_mm512_mask_i32scatter_pd): Ditto. + (_mm512_i64scatter_ps): Ditto. + (_mm512_mask_i64scatter_ps): Ditto. + (_mm512_i64scatter_pd): Ditto. + (_mm512_mask_i64scatter_pd): Ditto. + (_mm512_i32scatter_epi32): Ditto. + (_mm512_mask_i32scatter_epi32): Ditto. + (_mm512_i32scatter_epi64): Ditto. + (_mm512_mask_i32scatter_epi64): Ditto. + (_mm512_i64scatter_epi32): Ditto. + (_mm512_mask_i64scatter_epi32): Ditto. + (_mm512_i64scatter_epi64): Ditto. + (_mm512_mask_i64scatter_epi64): Ditto. + * config/i386/avx512pfintrin.h + (_mm512_mask_prefetch_i32gather_pd): Change __addr type to void const*. + (_mm512_mask_prefetch_i32gather_ps): Ditto. + (_mm512_mask_prefetch_i64gather_pd): Ditto. + (_mm512_mask_prefetch_i64gather_ps): Ditto. + (_mm512_prefetch_i32scatter_pd): Change __addr type to void*. + (_mm512_prefetch_i32scatter_ps): Ditto. + (_mm512_mask_prefetch_i32scatter_pd): Ditto. + (_mm512_mask_prefetch_i32scatter_ps): Ditto. + (_mm512_prefetch_i64scatter_pd): Ditto. + (_mm512_prefetch_i64scatter_ps): Ditto. + (_mm512_mask_prefetch_i64scatter_pd): Ditto. + (_mm512_mask_prefetch_i64scatter_ps): Ditto. + * config/i386/avx512vlintrin.h + (_mm256_mmask_i32gather_ps): Change __addr type to void const*. + (_mm_mmask_i32gather_ps): Ditto. + (_mm256_mmask_i32gather_pd): Ditto. + (_mm_mmask_i32gather_pd): Ditto. + (_mm256_mmask_i64gather_ps): Ditto. + (_mm_mmask_i64gather_ps): Ditto. + (_mm256_mmask_i64gather_pd): Ditto. + (_mm_mmask_i64gather_pd): Ditto. + (_mm256_mmask_i32gather_epi32): Ditto. + (_mm_mmask_i32gather_epi32): Ditto. + (_mm256_mmask_i32gather_epi64): Ditto. + (_mm_mmask_i32gather_epi64): Ditto. + (_mm256_mmask_i64gather_epi32): Ditto. + (_mm_mmask_i64gather_epi32): Ditto. + (_mm256_mmask_i64gather_epi64): Ditto. + (_mm_mmask_i64gather_epi64): Ditto. + (_mm256_i32scatter_ps): Change __addr type to void*. + (_mm256_mask_i32scatter_ps): Ditto. + (_mm_i32scatter_ps): Ditto. + (_mm_mask_i32scatter_ps): Ditto. + (_mm256_i32scatter_pd): Ditto. + (_mm256_mask_i32scatter_pd): Ditto. + (_mm_i32scatter_pd): Ditto. + (_mm_mask_i32scatter_pd): Ditto. + (_mm256_i64scatter_ps): Ditto. + (_mm256_mask_i64scatter_ps): Ditto. + (_mm_i64scatter_ps): Ditto. + (_mm_mask_i64scatter_ps): Ditto. + (_mm256_i64scatter_pd): Ditto. + (_mm256_mask_i64scatter_pd): Ditto. + (_mm_i64scatter_pd): Ditto. + (_mm_mask_i64scatter_pd): Ditto. + (_mm256_i32scatter_epi32): Ditto. + (_mm256_mask_i32scatter_epi32): Ditto. + (_mm_i32scatter_epi32): Ditto. + (_mm_mask_i32scatter_epi32): Ditto. + (_mm256_i32scatter_epi64): Ditto. + (_mm256_mask_i32scatter_epi64): Ditto. + (_mm_i32scatter_epi64): Ditto. + (_mm_mask_i32scatter_epi64): Ditto. + (_mm256_i64scatter_epi32): Ditto. + (_mm256_mask_i64scatter_epi32): Ditto. + (_mm_i64scatter_epi32): Ditto. + (_mm_mask_i64scatter_epi32): Ditto. + (_mm256_i64scatter_epi64): Ditto. + (_mm256_mask_i64scatter_epi64): Ditto. + (_mm_i64scatter_epi64): Ditto. + (_mm_mask_i64scatter_epi64): Ditto. + * config/i386/i386-builtin-types.def (V16SF_V16SF_PCFLOAT_V16SI_HI_INT) + (V8DF_V8DF_PCDOUBLE_V8SI_QI_INT, V8SF_V8SF_PCFLOAT_V8DI_QI_INT) + (V8DF_V8DF_PCDOUBLE_V8DI_QI_INT, V16SI_V16SI_PCINT_V16SI_HI_INT) + (V8DI_V8DI_PCINT64_V8SI_QI_INT, V8SI_V8SI_PCINT_V8DI_QI_INT) + (V8DI_V8DI_PCINT64_V8DI_QI_INT, V2DF_V2DF_PCDOUBLE_V4SI_QI_INT) + (V4DF_V4DF_PCDOUBLE_V4SI_QI_INT, V2DF_V2DF_PCDOUBLE_V2DI_QI_INT) + (V4DF_V4DF_PCDOUBLE_V4DI_QI_INT, V4SF_V4SF_PCFLOAT_V4SI_QI_INT) + (V8SF_V8SF_PCFLOAT_V8SI_QI_INT, V4SF_V4SF_PCFLOAT_V2DI_QI_INT) + (V4SF_V4SF_PCFLOAT_V4DI_QI_INT, V2DI_V2DI_PCINT64_V4SI_QI_INT) + (V4DI_V4DI_PCINT64_V4SI_QI_INT, V2DI_V2DI_PCINT64_V2DI_QI_INT) + (V4DI_V4DI_PCINT64_V4DI_QI_INT, V4SI_V4SI_PCINT_V4SI_QI_INT) + (V8SI_V8SI_PCINT_V8SI_QI_INT, V4SI_V4SI_PCINT_V2DI_QI_INT) + (V4SI_V4SI_PCINT_V4DI_QI_INT, VOID_PFLOAT_HI_V16SI_V16SF_INT) + (VOID_PFLOAT_QI_V8SI_V8SF_INT, VOID_PFLOAT_QI_V4SI_V4SF_INT) + (VOID_PDOUBLE_QI_V8SI_V8DF_INT, VOID_PDOUBLE_QI_V4SI_V4DF_INT) + (VOID_PDOUBLE_QI_V4SI_V2DF_INT, VOID_PFLOAT_QI_V8DI_V8SF_INT) + (VOID_PFLOAT_QI_V4DI_V4SF_INT, VOID_PFLOAT_QI_V2DI_V4SF_INT) + (VOID_PDOUBLE_QI_V8DI_V8DF_INT, VOID_PDOUBLE_QI_V4DI_V4DF_INT) + (VOID_PDOUBLE_QI_V2DI_V2DF_INT, VOID_PINT_HI_V16SI_V16SI_INT) + (VOID_PINT_QI_V8SI_V8SI_INT, VOID_PINT_QI_V4SI_V4SI_INT) + (VOID_PLONGLONG_QI_V8SI_V8DI_INT, VOID_PLONGLONG_QI_V4SI_V4DI_INT) + (VOID_PLONGLONG_QI_V4SI_V2DI_INT, VOID_PINT_QI_V8DI_V8SI_INT) + (VOID_PINT_QI_V4DI_V4SI_INT, VOID_PINT_QI_V2DI_V4SI_INT) + (VOID_PLONGLONG_QI_V8DI_V8DI_INT, VOID_QI_V8SI_PCINT64_INT_INT) + (VOID_PLONGLONG_QI_V4DI_V4DI_INT, VOID_PLONGLONG_QI_V2DI_V2DI_INT) + (VOID_HI_V16SI_PCINT_INT_INT, VOID_QI_V8DI_PCINT64_INT_INT) + (VOID_QI_V8DI_PCINT_INT_INT): Remove. + (V16SF_V16SF_PCVOID_V16SI_HI_INT, V8DF_V8DF_PCVOID_V8SI_QI_INT) + (V8SF_V8SF_PCVOID_V8DI_QI_INT, V8DF_V8DF_PCVOID_V8DI_QI_INT) + (V16SI_V16SI_PCVOID_V16SI_HI_INT, V8DI_V8DI_PCVOID_V8SI_QI_INT) + (V8SI_V8SI_PCVOID_V8DI_QI_INT, V8DI_V8DI_PCVOID_V8DI_QI_INT) + (VOID_PVOID_HI_V16SI_V16SF_INT, VOID_PVOID_QI_V8SI_V8DF_INT) + (VOID_PVOID_QI_V8DI_V8SF_INT, VOID_PVOID_QI_V8DI_V8DF_INT) + (VOID_PVOID_HI_V16SI_V16SI_INT, VOID_PVOID_QI_V8SI_V8DI_INT) + (VOID_PVOID_QI_V8DI_V8SI_INT, VOID_PVOID_QI_V8DI_V8DI_INT) + (V2DF_V2DF_PCVOID_V4SI_QI_INT, V4DF_V4DF_PCVOID_V4SI_QI_INT) + (V2DF_V2DF_PCVOID_V2DI_QI_INT, V4DF_V4DF_PCVOID_V4DI_QI_INT + (V4SF_V4SF_PCVOID_V4SI_QI_INT, V8SF_V8SF_PCVOID_V8SI_QI_INT) + (V4SF_V4SF_PCVOID_V2DI_QI_INT, V4SF_V4SF_PCVOID_V4DI_QI_INT) + (V2DI_V2DI_PCVOID_V4SI_QI_INT, V4DI_V4DI_PCVOID_V4SI_QI_INT) + (V2DI_V2DI_PCVOID_V2DI_QI_INT, V4DI_V4DI_PCVOID_V4DI_QI_INT) + (V4SI_V4SI_PCVOID_V4SI_QI_INT, V8SI_V8SI_PCVOID_V8SI_QI_INT) + (V4SI_V4SI_PCVOID_V2DI_QI_INT, V4SI_V4SI_PCVOID_V4DI_QI_INT) + (VOID_PVOID_QI_V8SI_V8SF_INT, VOID_PVOID_QI_V4SI_V4SF_INT) + (VOID_PVOID_QI_V4SI_V4DF_INT, VOID_PVOID_QI_V4SI_V2DF_INT) + (VOID_PVOID_QI_V4DI_V4SF_INT, VOID_PVOID_QI_V2DI_V4SF_INT) + (VOID_PVOID_QI_V4DI_V4DF_INT, VOID_PVOID_QI_V2DI_V2DF_INT) + (VOID_PVOID_QI_V8SI_V8SI_INT, VOID_PVOID_QI_V4SI_V4SI_INT) + (VOID_PVOID_QI_V4SI_V4DI_INT, VOID_PVOID_QI_V4SI_V2DI_INT) + (VOID_PVOID_QI_V4DI_V4SI_INT, VOID_PVOID_QI_V2DI_V4SI_INT) + (VOID_PVOID_QI_V4DI_V4DI_INT, VOID_PVOID_QI_V2DI_V2DI_INT) + (VOID_QI_V8SI_PCVOID_INT_INT, VOID_HI_V16SI_PCVOID_INT_INT) + (VOID_QI_V8DI_PCVOID_INT_INT): Add. + * config/i386/i386.c (ix86_init_mmx_sse_builtins): Adjust builtin + definitions accordingly. + 2017-01-17 Kito Cheng Kuan-Lin Chen diff --git a/gcc/config/i386/avx512fintrin.h b/gcc/config/i386/avx512fintrin.h index 346cb00d6c5..af6880ed478 100644 --- a/gcc/config/i386/avx512fintrin.h +++ b/gcc/config/i386/avx512fintrin.h @@ -9204,7 +9204,7 @@ _mm_mask_cmp_round_ss_mask (__mmask8 __M, __m128 __X, __m128 __Y, #ifdef __OPTIMIZE__ extern __inline __m512 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i32gather_ps (__m512i __index, float const *__addr, int __scale) +_mm512_i32gather_ps (__m512i __index, void const *__addr, int __scale) { __m512 __v1_old = _mm512_undefined_ps (); __mmask16 __mask = 0xFFFF; @@ -9218,7 +9218,7 @@ _mm512_i32gather_ps (__m512i __index, float const *__addr, int __scale) extern __inline __m512 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_i32gather_ps (__m512 __v1_old, __mmask16 __mask, - __m512i __index, float const *__addr, int __scale) + __m512i __index, void const *__addr, int __scale) { return (__m512) __builtin_ia32_gathersiv16sf ((__v16sf) __v1_old, __addr, @@ -9228,7 +9228,7 @@ _mm512_mask_i32gather_ps (__m512 __v1_old, __mmask16 __mask, extern __inline __m512d __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i32gather_pd (__m256i __index, double const *__addr, int __scale) +_mm512_i32gather_pd (__m256i __index, void const *__addr, int __scale) { __m512d __v1_old = _mm512_undefined_pd (); __mmask8 __mask = 0xFF; @@ -9242,7 +9242,7 @@ _mm512_i32gather_pd (__m256i __index, double const *__addr, int __scale) extern __inline __m512d __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_i32gather_pd (__m512d __v1_old, __mmask8 __mask, - __m256i __index, double const *__addr, int __scale) + __m256i __index, void const *__addr, int __scale) { return (__m512d) __builtin_ia32_gathersiv8df ((__v8df) __v1_old, __addr, @@ -9252,7 +9252,7 @@ _mm512_mask_i32gather_pd (__m512d __v1_old, __mmask8 __mask, extern __inline __m256 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i64gather_ps (__m512i __index, float const *__addr, int __scale) +_mm512_i64gather_ps (__m512i __index, void const *__addr, int __scale) { __m256 __v1_old = _mm256_undefined_ps (); __mmask8 __mask = 0xFF; @@ -9266,7 +9266,7 @@ _mm512_i64gather_ps (__m512i __index, float const *__addr, int __scale) extern __inline __m256 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_i64gather_ps (__m256 __v1_old, __mmask8 __mask, - __m512i __index, float const *__addr, int __scale) + __m512i __index, void const *__addr, int __scale) { return (__m256) __builtin_ia32_gatherdiv16sf ((__v8sf) __v1_old, __addr, @@ -9276,7 +9276,7 @@ _mm512_mask_i64gather_ps (__m256 __v1_old, __mmask8 __mask, extern __inline __m512d __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i64gather_pd (__m512i __index, double const *__addr, int __scale) +_mm512_i64gather_pd (__m512i __index, void const *__addr, int __scale) { __m512d __v1_old = _mm512_undefined_pd (); __mmask8 __mask = 0xFF; @@ -9290,7 +9290,7 @@ _mm512_i64gather_pd (__m512i __index, double const *__addr, int __scale) extern __inline __m512d __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_i64gather_pd (__m512d __v1_old, __mmask8 __mask, - __m512i __index, double const *__addr, int __scale) + __m512i __index, void const *__addr, int __scale) { return (__m512d) __builtin_ia32_gatherdiv8df ((__v8df) __v1_old, __addr, @@ -9300,7 +9300,7 @@ _mm512_mask_i64gather_pd (__m512d __v1_old, __mmask8 __mask, extern __inline __m512i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i32gather_epi32 (__m512i __index, int const *__addr, int __scale) +_mm512_i32gather_epi32 (__m512i __index, void const *__addr, int __scale) { __m512i __v1_old = _mm512_undefined_epi32 (); __mmask16 __mask = 0xFFFF; @@ -9314,7 +9314,7 @@ _mm512_i32gather_epi32 (__m512i __index, int const *__addr, int __scale) extern __inline __m512i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_i32gather_epi32 (__m512i __v1_old, __mmask16 __mask, - __m512i __index, int const *__addr, int __scale) + __m512i __index, void const *__addr, int __scale) { return (__m512i) __builtin_ia32_gathersiv16si ((__v16si) __v1_old, __addr, @@ -9324,7 +9324,7 @@ _mm512_mask_i32gather_epi32 (__m512i __v1_old, __mmask16 __mask, extern __inline __m512i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i32gather_epi64 (__m256i __index, long long const *__addr, int __scale) +_mm512_i32gather_epi64 (__m256i __index, void const *__addr, int __scale) { __m512i __v1_old = _mm512_undefined_epi32 (); __mmask8 __mask = 0xFF; @@ -9338,7 +9338,7 @@ _mm512_i32gather_epi64 (__m256i __index, long long const *__addr, int __scale) extern __inline __m512i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_i32gather_epi64 (__m512i __v1_old, __mmask8 __mask, - __m256i __index, long long const *__addr, + __m256i __index, void const *__addr, int __scale) { return (__m512i) __builtin_ia32_gathersiv8di ((__v8di) __v1_old, @@ -9349,7 +9349,7 @@ _mm512_mask_i32gather_epi64 (__m512i __v1_old, __mmask8 __mask, extern __inline __m256i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i64gather_epi32 (__m512i __index, int const *__addr, int __scale) +_mm512_i64gather_epi32 (__m512i __index, void const *__addr, int __scale) { __m256i __v1_old = _mm256_undefined_si256 (); __mmask8 __mask = 0xFF; @@ -9363,7 +9363,7 @@ _mm512_i64gather_epi32 (__m512i __index, int const *__addr, int __scale) extern __inline __m256i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_i64gather_epi32 (__m256i __v1_old, __mmask8 __mask, - __m512i __index, int const *__addr, int __scale) + __m512i __index, void const *__addr, int __scale) { return (__m256i) __builtin_ia32_gatherdiv16si ((__v8si) __v1_old, __addr, @@ -9373,7 +9373,7 @@ _mm512_mask_i64gather_epi32 (__m256i __v1_old, __mmask8 __mask, extern __inline __m512i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i64gather_epi64 (__m512i __index, long long const *__addr, int __scale) +_mm512_i64gather_epi64 (__m512i __index, void const *__addr, int __scale) { __m512i __v1_old = _mm512_undefined_epi32 (); __mmask8 __mask = 0xFF; @@ -9387,7 +9387,7 @@ _mm512_i64gather_epi64 (__m512i __index, long long const *__addr, int __scale) extern __inline __m512i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_i64gather_epi64 (__m512i __v1_old, __mmask8 __mask, - __m512i __index, long long const *__addr, + __m512i __index, void const *__addr, int __scale) { return (__m512i) __builtin_ia32_gatherdiv8di ((__v8di) __v1_old, @@ -9398,7 +9398,7 @@ _mm512_mask_i64gather_epi64 (__m512i __v1_old, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i32scatter_ps (float *__addr, __m512i __index, __m512 __v1, int __scale) +_mm512_i32scatter_ps (void *__addr, __m512i __index, __m512 __v1, int __scale) { __builtin_ia32_scattersiv16sf (__addr, (__mmask16) 0xFFFF, (__v16si) __index, (__v16sf) __v1, __scale); @@ -9406,7 +9406,7 @@ _mm512_i32scatter_ps (float *__addr, __m512i __index, __m512 __v1, int __scale) extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_mask_i32scatter_ps (float *__addr, __mmask16 __mask, +_mm512_mask_i32scatter_ps (void *__addr, __mmask16 __mask, __m512i __index, __m512 __v1, int __scale) { __builtin_ia32_scattersiv16sf (__addr, __mask, (__v16si) __index, @@ -9415,7 +9415,7 @@ _mm512_mask_i32scatter_ps (float *__addr, __mmask16 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i32scatter_pd (double *__addr, __m256i __index, __m512d __v1, +_mm512_i32scatter_pd (void *__addr, __m256i __index, __m512d __v1, int __scale) { __builtin_ia32_scattersiv8df (__addr, (__mmask8) 0xFF, @@ -9424,7 +9424,7 @@ _mm512_i32scatter_pd (double *__addr, __m256i __index, __m512d __v1, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_mask_i32scatter_pd (double *__addr, __mmask8 __mask, +_mm512_mask_i32scatter_pd (void *__addr, __mmask8 __mask, __m256i __index, __m512d __v1, int __scale) { __builtin_ia32_scattersiv8df (__addr, __mask, (__v8si) __index, @@ -9433,7 +9433,7 @@ _mm512_mask_i32scatter_pd (double *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i64scatter_ps (float *__addr, __m512i __index, __m256 __v1, int __scale) +_mm512_i64scatter_ps (void *__addr, __m512i __index, __m256 __v1, int __scale) { __builtin_ia32_scatterdiv16sf (__addr, (__mmask8) 0xFF, (__v8di) __index, (__v8sf) __v1, __scale); @@ -9441,7 +9441,7 @@ _mm512_i64scatter_ps (float *__addr, __m512i __index, __m256 __v1, int __scale) extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_mask_i64scatter_ps (float *__addr, __mmask8 __mask, +_mm512_mask_i64scatter_ps (void *__addr, __mmask8 __mask, __m512i __index, __m256 __v1, int __scale) { __builtin_ia32_scatterdiv16sf (__addr, __mask, (__v8di) __index, @@ -9450,7 +9450,7 @@ _mm512_mask_i64scatter_ps (float *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i64scatter_pd (double *__addr, __m512i __index, __m512d __v1, +_mm512_i64scatter_pd (void *__addr, __m512i __index, __m512d __v1, int __scale) { __builtin_ia32_scatterdiv8df (__addr, (__mmask8) 0xFF, @@ -9459,7 +9459,7 @@ _mm512_i64scatter_pd (double *__addr, __m512i __index, __m512d __v1, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_mask_i64scatter_pd (double *__addr, __mmask8 __mask, +_mm512_mask_i64scatter_pd (void *__addr, __mmask8 __mask, __m512i __index, __m512d __v1, int __scale) { __builtin_ia32_scatterdiv8df (__addr, __mask, (__v8di) __index, @@ -9468,7 +9468,7 @@ _mm512_mask_i64scatter_pd (double *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i32scatter_epi32 (int *__addr, __m512i __index, +_mm512_i32scatter_epi32 (void *__addr, __m512i __index, __m512i __v1, int __scale) { __builtin_ia32_scattersiv16si (__addr, (__mmask16) 0xFFFF, @@ -9477,7 +9477,7 @@ _mm512_i32scatter_epi32 (int *__addr, __m512i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_mask_i32scatter_epi32 (int *__addr, __mmask16 __mask, +_mm512_mask_i32scatter_epi32 (void *__addr, __mmask16 __mask, __m512i __index, __m512i __v1, int __scale) { __builtin_ia32_scattersiv16si (__addr, __mask, (__v16si) __index, @@ -9486,7 +9486,7 @@ _mm512_mask_i32scatter_epi32 (int *__addr, __mmask16 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i32scatter_epi64 (long long *__addr, __m256i __index, +_mm512_i32scatter_epi64 (void *__addr, __m256i __index, __m512i __v1, int __scale) { __builtin_ia32_scattersiv8di (__addr, (__mmask8) 0xFF, @@ -9495,7 +9495,7 @@ _mm512_i32scatter_epi64 (long long *__addr, __m256i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_mask_i32scatter_epi64 (long long *__addr, __mmask8 __mask, +_mm512_mask_i32scatter_epi64 (void *__addr, __mmask8 __mask, __m256i __index, __m512i __v1, int __scale) { __builtin_ia32_scattersiv8di (__addr, __mask, (__v8si) __index, @@ -9504,7 +9504,7 @@ _mm512_mask_i32scatter_epi64 (long long *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i64scatter_epi32 (int *__addr, __m512i __index, +_mm512_i64scatter_epi32 (void *__addr, __m512i __index, __m256i __v1, int __scale) { __builtin_ia32_scatterdiv16si (__addr, (__mmask8) 0xFF, @@ -9513,7 +9513,7 @@ _mm512_i64scatter_epi32 (int *__addr, __m512i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_mask_i64scatter_epi32 (int *__addr, __mmask8 __mask, +_mm512_mask_i64scatter_epi32 (void *__addr, __mmask8 __mask, __m512i __index, __m256i __v1, int __scale) { __builtin_ia32_scatterdiv16si (__addr, __mask, (__v8di) __index, @@ -9522,7 +9522,7 @@ _mm512_mask_i64scatter_epi32 (int *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_i64scatter_epi64 (long long *__addr, __m512i __index, +_mm512_i64scatter_epi64 (void *__addr, __m512i __index, __m512i __v1, int __scale) { __builtin_ia32_scatterdiv8di (__addr, (__mmask8) 0xFF, @@ -9531,7 +9531,7 @@ _mm512_i64scatter_epi64 (long long *__addr, __m512i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm512_mask_i64scatter_epi64 (long long *__addr, __mmask8 __mask, +_mm512_mask_i64scatter_epi64 (void *__addr, __mmask8 __mask, __m512i __index, __m512i __v1, int __scale) { __builtin_ia32_scatterdiv8di (__addr, __mask, (__v8di) __index, @@ -9540,177 +9540,177 @@ _mm512_mask_i64scatter_epi64 (long long *__addr, __mmask8 __mask, #else #define _mm512_i32gather_ps(INDEX, ADDR, SCALE) \ (__m512) __builtin_ia32_gathersiv16sf ((__v16sf)_mm512_undefined_ps(),\ - (float const *)ADDR, \ + (void const *)ADDR, \ (__v16si)(__m512i)INDEX, \ (__mmask16)0xFFFF, (int)SCALE) #define _mm512_mask_i32gather_ps(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m512) __builtin_ia32_gathersiv16sf ((__v16sf)(__m512)V1OLD, \ - (float const *)ADDR, \ + (void const *)ADDR, \ (__v16si)(__m512i)INDEX, \ (__mmask16)MASK, (int)SCALE) #define _mm512_i32gather_pd(INDEX, ADDR, SCALE) \ (__m512d) __builtin_ia32_gathersiv8df ((__v8df)_mm512_undefined_pd(), \ - (double const *)ADDR, \ + (void const *)ADDR, \ (__v8si)(__m256i)INDEX, \ (__mmask8)0xFF, (int)SCALE) #define _mm512_mask_i32gather_pd(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m512d) __builtin_ia32_gathersiv8df ((__v8df)(__m512d)V1OLD, \ - (double const *)ADDR, \ + (void const *)ADDR, \ (__v8si)(__m256i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm512_i64gather_ps(INDEX, ADDR, SCALE) \ (__m256) __builtin_ia32_gatherdiv16sf ((__v8sf)_mm256_undefined_ps(), \ - (float const *)ADDR, \ + (void const *)ADDR, \ (__v8di)(__m512i)INDEX, \ (__mmask8)0xFF, (int)SCALE) #define _mm512_mask_i64gather_ps(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m256) __builtin_ia32_gatherdiv16sf ((__v8sf)(__m256)V1OLD, \ - (float const *)ADDR, \ + (void const *)ADDR, \ (__v8di)(__m512i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm512_i64gather_pd(INDEX, ADDR, SCALE) \ (__m512d) __builtin_ia32_gatherdiv8df ((__v8df)_mm512_undefined_pd(), \ - (double const *)ADDR, \ + (void const *)ADDR, \ (__v8di)(__m512i)INDEX, \ (__mmask8)0xFF, (int)SCALE) #define _mm512_mask_i64gather_pd(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m512d) __builtin_ia32_gatherdiv8df ((__v8df)(__m512d)V1OLD, \ - (double const *)ADDR, \ + (void const *)ADDR, \ (__v8di)(__m512i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm512_i32gather_epi32(INDEX, ADDR, SCALE) \ (__m512i) __builtin_ia32_gathersiv16si ((__v16si)_mm512_undefined_epi32 (), \ - (int const *)ADDR, \ + (void const *)ADDR, \ (__v16si)(__m512i)INDEX, \ (__mmask16)0xFFFF, (int)SCALE) #define _mm512_mask_i32gather_epi32(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m512i) __builtin_ia32_gathersiv16si ((__v16si)(__m512i)V1OLD, \ - (int const *)ADDR, \ + (void const *)ADDR, \ (__v16si)(__m512i)INDEX, \ (__mmask16)MASK, (int)SCALE) #define _mm512_i32gather_epi64(INDEX, ADDR, SCALE) \ (__m512i) __builtin_ia32_gathersiv8di ((__v8di)_mm512_undefined_epi32 (), \ - (long long const *)ADDR, \ + (void const *)ADDR, \ (__v8si)(__m256i)INDEX, \ (__mmask8)0xFF, (int)SCALE) #define _mm512_mask_i32gather_epi64(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m512i) __builtin_ia32_gathersiv8di ((__v8di)(__m512i)V1OLD, \ - (long long const *)ADDR, \ + (void const *)ADDR, \ (__v8si)(__m256i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm512_i64gather_epi32(INDEX, ADDR, SCALE) \ (__m256i) __builtin_ia32_gatherdiv16si ((__v8si)_mm256_undefined_si256(), \ - (int const *)ADDR, \ + (void const *)ADDR, \ (__v8di)(__m512i)INDEX, \ (__mmask8)0xFF, (int)SCALE) #define _mm512_mask_i64gather_epi32(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m256i) __builtin_ia32_gatherdiv16si ((__v8si)(__m256i)V1OLD, \ - (int const *)ADDR, \ + (void const *)ADDR, \ (__v8di)(__m512i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm512_i64gather_epi64(INDEX, ADDR, SCALE) \ (__m512i) __builtin_ia32_gatherdiv8di ((__v8di)_mm512_undefined_epi32 (), \ - (long long const *)ADDR, \ + (void const *)ADDR, \ (__v8di)(__m512i)INDEX, \ (__mmask8)0xFF, (int)SCALE) #define _mm512_mask_i64gather_epi64(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m512i) __builtin_ia32_gatherdiv8di ((__v8di)(__m512i)V1OLD, \ - (long long const *)ADDR, \ + (void const *)ADDR, \ (__v8di)(__m512i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm512_i32scatter_ps(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv16sf ((float *)ADDR, (__mmask16)0xFFFF, \ + __builtin_ia32_scattersiv16sf ((void *)ADDR, (__mmask16)0xFFFF, \ (__v16si)(__m512i)INDEX, \ (__v16sf)(__m512)V1, (int)SCALE) #define _mm512_mask_i32scatter_ps(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv16sf ((float *)ADDR, (__mmask16)MASK, \ + __builtin_ia32_scattersiv16sf ((void *)ADDR, (__mmask16)MASK, \ (__v16si)(__m512i)INDEX, \ (__v16sf)(__m512)V1, (int)SCALE) #define _mm512_i32scatter_pd(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv8df ((double *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scattersiv8df ((void *)ADDR, (__mmask8)0xFF, \ (__v8si)(__m256i)INDEX, \ (__v8df)(__m512d)V1, (int)SCALE) #define _mm512_mask_i32scatter_pd(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv8df ((double *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scattersiv8df ((void *)ADDR, (__mmask8)MASK, \ (__v8si)(__m256i)INDEX, \ (__v8df)(__m512d)V1, (int)SCALE) #define _mm512_i64scatter_ps(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv16sf ((float *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scatterdiv16sf ((void *)ADDR, (__mmask8)0xFF, \ (__v8di)(__m512i)INDEX, \ (__v8sf)(__m256)V1, (int)SCALE) #define _mm512_mask_i64scatter_ps(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv16sf ((float *)ADDR, (__mmask16)MASK, \ + __builtin_ia32_scatterdiv16sf ((void *)ADDR, (__mmask16)MASK, \ (__v8di)(__m512i)INDEX, \ (__v8sf)(__m256)V1, (int)SCALE) #define _mm512_i64scatter_pd(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv8df ((double *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scatterdiv8df ((void *)ADDR, (__mmask8)0xFF, \ (__v8di)(__m512i)INDEX, \ (__v8df)(__m512d)V1, (int)SCALE) #define _mm512_mask_i64scatter_pd(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv8df ((double *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scatterdiv8df ((void *)ADDR, (__mmask8)MASK, \ (__v8di)(__m512i)INDEX, \ (__v8df)(__m512d)V1, (int)SCALE) #define _mm512_i32scatter_epi32(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv16si ((int *)ADDR, (__mmask16)0xFFFF, \ + __builtin_ia32_scattersiv16si ((void *)ADDR, (__mmask16)0xFFFF, \ (__v16si)(__m512i)INDEX, \ (__v16si)(__m512i)V1, (int)SCALE) #define _mm512_mask_i32scatter_epi32(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv16si ((int *)ADDR, (__mmask16)MASK, \ + __builtin_ia32_scattersiv16si ((void *)ADDR, (__mmask16)MASK, \ (__v16si)(__m512i)INDEX, \ (__v16si)(__m512i)V1, (int)SCALE) #define _mm512_i32scatter_epi64(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv8di ((long long *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scattersiv8di ((void *)ADDR, (__mmask8)0xFF, \ (__v8si)(__m256i)INDEX, \ (__v8di)(__m512i)V1, (int)SCALE) #define _mm512_mask_i32scatter_epi64(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv8di ((long long *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scattersiv8di ((void *)ADDR, (__mmask8)MASK, \ (__v8si)(__m256i)INDEX, \ (__v8di)(__m512i)V1, (int)SCALE) #define _mm512_i64scatter_epi32(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv16si ((int *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scatterdiv16si ((void *)ADDR, (__mmask8)0xFF, \ (__v8di)(__m512i)INDEX, \ (__v8si)(__m256i)V1, (int)SCALE) #define _mm512_mask_i64scatter_epi32(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv16si ((int *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scatterdiv16si ((void *)ADDR, (__mmask8)MASK, \ (__v8di)(__m512i)INDEX, \ (__v8si)(__m256i)V1, (int)SCALE) #define _mm512_i64scatter_epi64(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv8di ((long long *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scatterdiv8di ((void *)ADDR, (__mmask8)0xFF, \ (__v8di)(__m512i)INDEX, \ (__v8di)(__m512i)V1, (int)SCALE) #define _mm512_mask_i64scatter_epi64(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv8di ((long long *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scatterdiv8di ((void *)ADDR, (__mmask8)MASK, \ (__v8di)(__m512i)INDEX, \ (__v8di)(__m512i)V1, (int)SCALE) #endif diff --git a/gcc/config/i386/avx512pfintrin.h b/gcc/config/i386/avx512pfintrin.h index 70e6ec35ee7..8dfaa07e97e 100644 --- a/gcc/config/i386/avx512pfintrin.h +++ b/gcc/config/i386/avx512pfintrin.h @@ -49,37 +49,37 @@ typedef unsigned short __mmask16; extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_prefetch_i32gather_pd (__m256i __index, __mmask8 __mask, - void *__addr, int __scale, int __hint) + void const *__addr, int __scale, int __hint) { - __builtin_ia32_gatherpfdpd (__mask, (__v8si) __index, - (long long const *) __addr, __scale, __hint); + __builtin_ia32_gatherpfdpd (__mask, (__v8si) __index, __addr, __scale, + __hint); } extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_prefetch_i32gather_ps (__m512i __index, __mmask16 __mask, - void *__addr, int __scale, int __hint) + void const *__addr, int __scale, int __hint) { - __builtin_ia32_gatherpfdps (__mask, (__v16si) __index, (int const *) __addr, - __scale, __hint); + __builtin_ia32_gatherpfdps (__mask, (__v16si) __index, __addr, __scale, + __hint); } extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_prefetch_i64gather_pd (__m512i __index, __mmask8 __mask, - void *__addr, int __scale, int __hint) + void const *__addr, int __scale, int __hint) { - __builtin_ia32_gatherpfqpd (__mask, (__v8di) __index, - (long long const *) __addr, __scale, __hint); + __builtin_ia32_gatherpfqpd (__mask, (__v8di) __index, __addr, __scale, + __hint); } extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_prefetch_i64gather_ps (__m512i __index, __mmask8 __mask, - void *__addr, int __scale, int __hint) + void const *__addr, int __scale, int __hint) { - __builtin_ia32_gatherpfqps (__mask, (__v8di) __index, (int const *) __addr, - __scale, __hint); + __builtin_ia32_gatherpfqps (__mask, (__v8di) __index, __addr, __scale, + __hint); } extern __inline void @@ -87,8 +87,8 @@ __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_prefetch_i32scatter_pd (void *__addr, __m256i __index, int __scale, int __hint) { - __builtin_ia32_scatterpfdpd ((__mmask8) 0xFF, (__v8si) __index, - (long long const *) __addr, __scale, __hint); + __builtin_ia32_scatterpfdpd ((__mmask8) 0xFF, (__v8si) __index, __addr, + __scale, __hint); } extern __inline void @@ -96,8 +96,8 @@ __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_prefetch_i32scatter_ps (void *__addr, __m512i __index, int __scale, int __hint) { - __builtin_ia32_scatterpfdps ((__mmask16) 0xFFFF, (__v16si) __index, - (int const *) __addr, __scale, __hint); + __builtin_ia32_scatterpfdps ((__mmask16) 0xFFFF, (__v16si) __index, __addr, + __scale, __hint); } extern __inline void @@ -105,8 +105,8 @@ __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_prefetch_i32scatter_pd (void *__addr, __mmask8 __mask, __m256i __index, int __scale, int __hint) { - __builtin_ia32_scatterpfdpd (__mask, (__v8si) __index, - (long long const *) __addr, __scale, __hint); + __builtin_ia32_scatterpfdpd (__mask, (__v8si) __index, __addr, __scale, + __hint); } extern __inline void @@ -114,8 +114,8 @@ __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_prefetch_i32scatter_ps (void *__addr, __mmask16 __mask, __m512i __index, int __scale, int __hint) { - __builtin_ia32_scatterpfdps (__mask, (__v16si) __index, (int const *) __addr, - __scale, __hint); + __builtin_ia32_scatterpfdps (__mask, (__v16si) __index, __addr, __scale, + __hint); } extern __inline void @@ -123,8 +123,8 @@ __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_prefetch_i64scatter_pd (void *__addr, __m512i __index, int __scale, int __hint) { - __builtin_ia32_scatterpfqpd ((__mmask8) 0xFF, (__v8di) __index, - (long long const *) __addr, __scale, __hint); + __builtin_ia32_scatterpfqpd ((__mmask8) 0xFF, (__v8di) __index,__addr, + __scale, __hint); } extern __inline void @@ -132,8 +132,8 @@ __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_prefetch_i64scatter_ps (void *__addr, __m512i __index, int __scale, int __hint) { - __builtin_ia32_scatterpfqps ((__mmask8) 0xFF, (__v8di) __index, - (int const *) __addr, __scale, __hint); + __builtin_ia32_scatterpfqps ((__mmask8) 0xFF, (__v8di) __index, __addr, + __scale, __hint); } extern __inline void @@ -141,8 +141,8 @@ __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_prefetch_i64scatter_pd (void *__addr, __mmask16 __mask, __m512i __index, int __scale, int __hint) { - __builtin_ia32_scatterpfqpd (__mask, (__v8di) __index, - (long long const *) __addr, __scale, __hint); + __builtin_ia32_scatterpfqpd (__mask, (__v8di) __index, __addr, __scale, + __hint); } extern __inline void @@ -150,58 +150,58 @@ __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_mask_prefetch_i64scatter_ps (void *__addr, __mmask16 __mask, __m512i __index, int __scale, int __hint) { - __builtin_ia32_scatterpfqps (__mask, (__v8di) __index, (int const *) __addr, - __scale, __hint); + __builtin_ia32_scatterpfqps (__mask, (__v8di) __index, __addr, __scale, + __hint); } #else #define _mm512_mask_prefetch_i32gather_pd(INDEX, MASK, ADDR, SCALE, HINT) \ __builtin_ia32_gatherpfdpd ((__mmask8)MASK, (__v8si)(__m256i)INDEX, \ - (long long const *)ADDR, (int)SCALE, (int)HINT) + (void const *)ADDR, (int)SCALE, (int)HINT) #define _mm512_mask_prefetch_i32gather_ps(INDEX, MASK, ADDR, SCALE, HINT) \ __builtin_ia32_gatherpfdps ((__mmask16)MASK, (__v16si)(__m512i)INDEX, \ - (int const *)ADDR, (int)SCALE, (int)HINT) + (void const *)ADDR, (int)SCALE, (int)HINT) #define _mm512_mask_prefetch_i64gather_pd(INDEX, MASK, ADDR, SCALE, HINT) \ __builtin_ia32_gatherpfqpd ((__mmask8)MASK, (__v8di)(__m512i)INDEX, \ - (long long const *)ADDR, (int)SCALE, (int)HINT) + (void *)ADDR, (int)SCALE, (int)HINT) #define _mm512_mask_prefetch_i64gather_ps(INDEX, MASK, ADDR, SCALE, HINT) \ __builtin_ia32_gatherpfqps ((__mmask8)MASK, (__v8di)(__m512i)INDEX, \ - (int const *)ADDR, (int)SCALE, (int)HINT) + (void *)ADDR, (int)SCALE, (int)HINT) #define _mm512_prefetch_i32scatter_pd(ADDR, INDEX, SCALE, HINT) \ __builtin_ia32_scatterpfdpd ((__mmask8)0xFF, (__v8si)(__m256i)INDEX, \ - (long long const *)ADDR, (int)SCALE, (int)HINT) + (void *)ADDR, (int)SCALE, (int)HINT) #define _mm512_prefetch_i32scatter_ps(ADDR, INDEX, SCALE, HINT) \ __builtin_ia32_scatterpfdps ((__mmask16)0xFFFF, (__v16si)(__m512i)INDEX, \ - (int const *)ADDR, (int)SCALE, (int)HINT) + (void *)ADDR, (int)SCALE, (int)HINT) #define _mm512_mask_prefetch_i32scatter_pd(ADDR, MASK, INDEX, SCALE, HINT) \ __builtin_ia32_scatterpfdpd ((__mmask8)MASK, (__v8si)(__m256i)INDEX, \ - (long long const *)ADDR, (int)SCALE, (int)HINT) + (void *)ADDR, (int)SCALE, (int)HINT) #define _mm512_mask_prefetch_i32scatter_ps(ADDR, MASK, INDEX, SCALE, HINT) \ __builtin_ia32_scatterpfdps ((__mmask16)MASK, (__v16si)(__m512i)INDEX, \ - (int const *)ADDR, (int)SCALE, (int)HINT) + (void *)ADDR, (int)SCALE, (int)HINT) #define _mm512_prefetch_i64scatter_pd(ADDR, INDEX, SCALE, HINT) \ __builtin_ia32_scatterpfqpd ((__mmask8)0xFF, (__v8di)(__m512i)INDEX, \ - (long long const *)ADDR, (int)SCALE, (int)HINT) + (void *)ADDR, (int)SCALE, (int)HINT) #define _mm512_prefetch_i64scatter_ps(ADDR, INDEX, SCALE, HINT) \ __builtin_ia32_scatterpfqps ((__mmask8)0xFF, (__v8di)(__m512i)INDEX, \ - (int const *)ADDR, (int)SCALE, (int)HINT) + (void *)ADDR, (int)SCALE, (int)HINT) #define _mm512_mask_prefetch_i64scatter_pd(ADDR, MASK, INDEX, SCALE, HINT) \ __builtin_ia32_scatterpfqpd ((__mmask8)MASK, (__v8di)(__m512i)INDEX, \ - (long long const *)ADDR, (int)SCALE, (int)HINT) + (void *)ADDR, (int)SCALE, (int)HINT) #define _mm512_mask_prefetch_i64scatter_ps(ADDR, MASK, INDEX, SCALE, HINT) \ __builtin_ia32_scatterpfqps ((__mmask8)MASK, (__v8di)(__m512i)INDEX, \ - (int const *)ADDR, (int)SCALE, (int)HINT) + (void *)ADDR, (int)SCALE, (int)HINT) #endif #ifdef __DISABLE_AVX512PF__ diff --git a/gcc/config/i386/avx512vlintrin.h b/gcc/config/i386/avx512vlintrin.h index 7ff30ebeabd..9750cd811aa 100644 --- a/gcc/config/i386/avx512vlintrin.h +++ b/gcc/config/i386/avx512vlintrin.h @@ -10229,7 +10229,7 @@ _mm_maskz_getmant_pd (__mmask8 __U, __m128d __A, extern __inline __m256 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm256_mmask_i32gather_ps (__m256 __v1_old, __mmask8 __mask, - __m256i __index, float const *__addr, + __m256i __index, void const *__addr, int __scale) { return (__m256) __builtin_ia32_gather3siv8sf ((__v8sf) __v1_old, @@ -10241,7 +10241,7 @@ _mm256_mmask_i32gather_ps (__m256 __v1_old, __mmask8 __mask, extern __inline __m128 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm_mmask_i32gather_ps (__m128 __v1_old, __mmask8 __mask, - __m128i __index, float const *__addr, + __m128i __index, void const *__addr, int __scale) { return (__m128) __builtin_ia32_gather3siv4sf ((__v4sf) __v1_old, @@ -10253,7 +10253,7 @@ _mm_mmask_i32gather_ps (__m128 __v1_old, __mmask8 __mask, extern __inline __m256d __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm256_mmask_i32gather_pd (__m256d __v1_old, __mmask8 __mask, - __m128i __index, double const *__addr, + __m128i __index, void const *__addr, int __scale) { return (__m256d) __builtin_ia32_gather3siv4df ((__v4df) __v1_old, @@ -10265,7 +10265,7 @@ _mm256_mmask_i32gather_pd (__m256d __v1_old, __mmask8 __mask, extern __inline __m128d __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm_mmask_i32gather_pd (__m128d __v1_old, __mmask8 __mask, - __m128i __index, double const *__addr, + __m128i __index, void const *__addr, int __scale) { return (__m128d) __builtin_ia32_gather3siv2df ((__v2df) __v1_old, @@ -10277,7 +10277,7 @@ _mm_mmask_i32gather_pd (__m128d __v1_old, __mmask8 __mask, extern __inline __m128 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm256_mmask_i64gather_ps (__m128 __v1_old, __mmask8 __mask, - __m256i __index, float const *__addr, + __m256i __index, void const *__addr, int __scale) { return (__m128) __builtin_ia32_gather3div8sf ((__v4sf) __v1_old, @@ -10289,7 +10289,7 @@ _mm256_mmask_i64gather_ps (__m128 __v1_old, __mmask8 __mask, extern __inline __m128 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm_mmask_i64gather_ps (__m128 __v1_old, __mmask8 __mask, - __m128i __index, float const *__addr, + __m128i __index, void const *__addr, int __scale) { return (__m128) __builtin_ia32_gather3div4sf ((__v4sf) __v1_old, @@ -10301,7 +10301,7 @@ _mm_mmask_i64gather_ps (__m128 __v1_old, __mmask8 __mask, extern __inline __m256d __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm256_mmask_i64gather_pd (__m256d __v1_old, __mmask8 __mask, - __m256i __index, double const *__addr, + __m256i __index, void const *__addr, int __scale) { return (__m256d) __builtin_ia32_gather3div4df ((__v4df) __v1_old, @@ -10313,7 +10313,7 @@ _mm256_mmask_i64gather_pd (__m256d __v1_old, __mmask8 __mask, extern __inline __m128d __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm_mmask_i64gather_pd (__m128d __v1_old, __mmask8 __mask, - __m128i __index, double const *__addr, + __m128i __index, void const *__addr, int __scale) { return (__m128d) __builtin_ia32_gather3div2df ((__v2df) __v1_old, @@ -10325,7 +10325,7 @@ _mm_mmask_i64gather_pd (__m128d __v1_old, __mmask8 __mask, extern __inline __m256i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm256_mmask_i32gather_epi32 (__m256i __v1_old, __mmask8 __mask, - __m256i __index, int const *__addr, + __m256i __index, void const *__addr, int __scale) { return (__m256i) __builtin_ia32_gather3siv8si ((__v8si) __v1_old, @@ -10337,7 +10337,7 @@ _mm256_mmask_i32gather_epi32 (__m256i __v1_old, __mmask8 __mask, extern __inline __m128i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm_mmask_i32gather_epi32 (__m128i __v1_old, __mmask8 __mask, - __m128i __index, int const *__addr, + __m128i __index, void const *__addr, int __scale) { return (__m128i) __builtin_ia32_gather3siv4si ((__v4si) __v1_old, @@ -10349,7 +10349,7 @@ _mm_mmask_i32gather_epi32 (__m128i __v1_old, __mmask8 __mask, extern __inline __m256i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm256_mmask_i32gather_epi64 (__m256i __v1_old, __mmask8 __mask, - __m128i __index, long long const *__addr, + __m128i __index, void const *__addr, int __scale) { return (__m256i) __builtin_ia32_gather3siv4di ((__v4di) __v1_old, @@ -10361,7 +10361,7 @@ _mm256_mmask_i32gather_epi64 (__m256i __v1_old, __mmask8 __mask, extern __inline __m128i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm_mmask_i32gather_epi64 (__m128i __v1_old, __mmask8 __mask, - __m128i __index, long long const *__addr, + __m128i __index, void const *__addr, int __scale) { return (__m128i) __builtin_ia32_gather3siv2di ((__v2di) __v1_old, @@ -10373,7 +10373,7 @@ _mm_mmask_i32gather_epi64 (__m128i __v1_old, __mmask8 __mask, extern __inline __m128i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm256_mmask_i64gather_epi32 (__m128i __v1_old, __mmask8 __mask, - __m256i __index, int const *__addr, + __m256i __index, void const *__addr, int __scale) { return (__m128i) __builtin_ia32_gather3div8si ((__v4si) __v1_old, @@ -10385,7 +10385,7 @@ _mm256_mmask_i64gather_epi32 (__m128i __v1_old, __mmask8 __mask, extern __inline __m128i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm_mmask_i64gather_epi32 (__m128i __v1_old, __mmask8 __mask, - __m128i __index, int const *__addr, + __m128i __index, void const *__addr, int __scale) { return (__m128i) __builtin_ia32_gather3div4si ((__v4si) __v1_old, @@ -10397,7 +10397,7 @@ _mm_mmask_i64gather_epi32 (__m128i __v1_old, __mmask8 __mask, extern __inline __m256i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm256_mmask_i64gather_epi64 (__m256i __v1_old, __mmask8 __mask, - __m256i __index, long long const *__addr, + __m256i __index, void const *__addr, int __scale) { return (__m256i) __builtin_ia32_gather3div4di ((__v4di) __v1_old, @@ -10409,7 +10409,7 @@ _mm256_mmask_i64gather_epi64 (__m256i __v1_old, __mmask8 __mask, extern __inline __m128i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm_mmask_i64gather_epi64 (__m128i __v1_old, __mmask8 __mask, - __m128i __index, long long const *__addr, + __m128i __index, void const *__addr, int __scale) { return (__m128i) __builtin_ia32_gather3div2di ((__v2di) __v1_old, @@ -10420,7 +10420,7 @@ _mm_mmask_i64gather_epi64 (__m128i __v1_old, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_i32scatter_ps (float *__addr, __m256i __index, +_mm256_i32scatter_ps (void *__addr, __m256i __index, __m256 __v1, const int __scale) { __builtin_ia32_scattersiv8sf (__addr, (__mmask8) 0xFF, @@ -10430,7 +10430,7 @@ _mm256_i32scatter_ps (float *__addr, __m256i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_mask_i32scatter_ps (float *__addr, __mmask8 __mask, +_mm256_mask_i32scatter_ps (void *__addr, __mmask8 __mask, __m256i __index, __m256 __v1, const int __scale) { @@ -10440,7 +10440,7 @@ _mm256_mask_i32scatter_ps (float *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_i32scatter_ps (float *__addr, __m128i __index, __m128 __v1, +_mm_i32scatter_ps (void *__addr, __m128i __index, __m128 __v1, const int __scale) { __builtin_ia32_scattersiv4sf (__addr, (__mmask8) 0xFF, @@ -10450,7 +10450,7 @@ _mm_i32scatter_ps (float *__addr, __m128i __index, __m128 __v1, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_mask_i32scatter_ps (float *__addr, __mmask8 __mask, +_mm_mask_i32scatter_ps (void *__addr, __mmask8 __mask, __m128i __index, __m128 __v1, const int __scale) { @@ -10460,7 +10460,7 @@ _mm_mask_i32scatter_ps (float *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_i32scatter_pd (double *__addr, __m128i __index, +_mm256_i32scatter_pd (void *__addr, __m128i __index, __m256d __v1, const int __scale) { __builtin_ia32_scattersiv4df (__addr, (__mmask8) 0xFF, @@ -10470,7 +10470,7 @@ _mm256_i32scatter_pd (double *__addr, __m128i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_mask_i32scatter_pd (double *__addr, __mmask8 __mask, +_mm256_mask_i32scatter_pd (void *__addr, __mmask8 __mask, __m128i __index, __m256d __v1, const int __scale) { @@ -10480,7 +10480,7 @@ _mm256_mask_i32scatter_pd (double *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_i32scatter_pd (double *__addr, __m128i __index, +_mm_i32scatter_pd (void *__addr, __m128i __index, __m128d __v1, const int __scale) { __builtin_ia32_scattersiv2df (__addr, (__mmask8) 0xFF, @@ -10490,7 +10490,7 @@ _mm_i32scatter_pd (double *__addr, __m128i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_mask_i32scatter_pd (double *__addr, __mmask8 __mask, +_mm_mask_i32scatter_pd (void *__addr, __mmask8 __mask, __m128i __index, __m128d __v1, const int __scale) { @@ -10500,7 +10500,7 @@ _mm_mask_i32scatter_pd (double *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_i64scatter_ps (float *__addr, __m256i __index, +_mm256_i64scatter_ps (void *__addr, __m256i __index, __m128 __v1, const int __scale) { __builtin_ia32_scatterdiv8sf (__addr, (__mmask8) 0xFF, @@ -10510,7 +10510,7 @@ _mm256_i64scatter_ps (float *__addr, __m256i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_mask_i64scatter_ps (float *__addr, __mmask8 __mask, +_mm256_mask_i64scatter_ps (void *__addr, __mmask8 __mask, __m256i __index, __m128 __v1, const int __scale) { @@ -10520,7 +10520,7 @@ _mm256_mask_i64scatter_ps (float *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_i64scatter_ps (float *__addr, __m128i __index, __m128 __v1, +_mm_i64scatter_ps (void *__addr, __m128i __index, __m128 __v1, const int __scale) { __builtin_ia32_scatterdiv4sf (__addr, (__mmask8) 0xFF, @@ -10530,7 +10530,7 @@ _mm_i64scatter_ps (float *__addr, __m128i __index, __m128 __v1, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_mask_i64scatter_ps (float *__addr, __mmask8 __mask, +_mm_mask_i64scatter_ps (void *__addr, __mmask8 __mask, __m128i __index, __m128 __v1, const int __scale) { @@ -10540,7 +10540,7 @@ _mm_mask_i64scatter_ps (float *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_i64scatter_pd (double *__addr, __m256i __index, +_mm256_i64scatter_pd (void *__addr, __m256i __index, __m256d __v1, const int __scale) { __builtin_ia32_scatterdiv4df (__addr, (__mmask8) 0xFF, @@ -10550,7 +10550,7 @@ _mm256_i64scatter_pd (double *__addr, __m256i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_mask_i64scatter_pd (double *__addr, __mmask8 __mask, +_mm256_mask_i64scatter_pd (void *__addr, __mmask8 __mask, __m256i __index, __m256d __v1, const int __scale) { @@ -10560,7 +10560,7 @@ _mm256_mask_i64scatter_pd (double *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_i64scatter_pd (double *__addr, __m128i __index, +_mm_i64scatter_pd (void *__addr, __m128i __index, __m128d __v1, const int __scale) { __builtin_ia32_scatterdiv2df (__addr, (__mmask8) 0xFF, @@ -10570,7 +10570,7 @@ _mm_i64scatter_pd (double *__addr, __m128i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_mask_i64scatter_pd (double *__addr, __mmask8 __mask, +_mm_mask_i64scatter_pd (void *__addr, __mmask8 __mask, __m128i __index, __m128d __v1, const int __scale) { @@ -10580,7 +10580,7 @@ _mm_mask_i64scatter_pd (double *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_i32scatter_epi32 (int *__addr, __m256i __index, +_mm256_i32scatter_epi32 (void *__addr, __m256i __index, __m256i __v1, const int __scale) { __builtin_ia32_scattersiv8si (__addr, (__mmask8) 0xFF, @@ -10590,7 +10590,7 @@ _mm256_i32scatter_epi32 (int *__addr, __m256i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_mask_i32scatter_epi32 (int *__addr, __mmask8 __mask, +_mm256_mask_i32scatter_epi32 (void *__addr, __mmask8 __mask, __m256i __index, __m256i __v1, const int __scale) { @@ -10600,7 +10600,7 @@ _mm256_mask_i32scatter_epi32 (int *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_i32scatter_epi32 (int *__addr, __m128i __index, +_mm_i32scatter_epi32 (void *__addr, __m128i __index, __m128i __v1, const int __scale) { __builtin_ia32_scattersiv4si (__addr, (__mmask8) 0xFF, @@ -10610,7 +10610,7 @@ _mm_i32scatter_epi32 (int *__addr, __m128i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_mask_i32scatter_epi32 (int *__addr, __mmask8 __mask, +_mm_mask_i32scatter_epi32 (void *__addr, __mmask8 __mask, __m128i __index, __m128i __v1, const int __scale) { @@ -10620,7 +10620,7 @@ _mm_mask_i32scatter_epi32 (int *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_i32scatter_epi64 (long long *__addr, __m128i __index, +_mm256_i32scatter_epi64 (void *__addr, __m128i __index, __m256i __v1, const int __scale) { __builtin_ia32_scattersiv4di (__addr, (__mmask8) 0xFF, @@ -10630,7 +10630,7 @@ _mm256_i32scatter_epi64 (long long *__addr, __m128i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_mask_i32scatter_epi64 (long long *__addr, __mmask8 __mask, +_mm256_mask_i32scatter_epi64 (void *__addr, __mmask8 __mask, __m128i __index, __m256i __v1, const int __scale) { @@ -10640,7 +10640,7 @@ _mm256_mask_i32scatter_epi64 (long long *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_i32scatter_epi64 (long long *__addr, __m128i __index, +_mm_i32scatter_epi64 (void *__addr, __m128i __index, __m128i __v1, const int __scale) { __builtin_ia32_scattersiv2di (__addr, (__mmask8) 0xFF, @@ -10650,7 +10650,7 @@ _mm_i32scatter_epi64 (long long *__addr, __m128i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_mask_i32scatter_epi64 (long long *__addr, __mmask8 __mask, +_mm_mask_i32scatter_epi64 (void *__addr, __mmask8 __mask, __m128i __index, __m128i __v1, const int __scale) { @@ -10660,7 +10660,7 @@ _mm_mask_i32scatter_epi64 (long long *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_i64scatter_epi32 (int *__addr, __m256i __index, +_mm256_i64scatter_epi32 (void *__addr, __m256i __index, __m128i __v1, const int __scale) { __builtin_ia32_scatterdiv8si (__addr, (__mmask8) 0xFF, @@ -10670,7 +10670,7 @@ _mm256_i64scatter_epi32 (int *__addr, __m256i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_mask_i64scatter_epi32 (int *__addr, __mmask8 __mask, +_mm256_mask_i64scatter_epi32 (void *__addr, __mmask8 __mask, __m256i __index, __m128i __v1, const int __scale) { @@ -10680,7 +10680,7 @@ _mm256_mask_i64scatter_epi32 (int *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_i64scatter_epi32 (int *__addr, __m128i __index, +_mm_i64scatter_epi32 (void *__addr, __m128i __index, __m128i __v1, const int __scale) { __builtin_ia32_scatterdiv4si (__addr, (__mmask8) 0xFF, @@ -10690,7 +10690,7 @@ _mm_i64scatter_epi32 (int *__addr, __m128i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_mask_i64scatter_epi32 (int *__addr, __mmask8 __mask, +_mm_mask_i64scatter_epi32 (void *__addr, __mmask8 __mask, __m128i __index, __m128i __v1, const int __scale) { @@ -10700,7 +10700,7 @@ _mm_mask_i64scatter_epi32 (int *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_i64scatter_epi64 (long long *__addr, __m256i __index, +_mm256_i64scatter_epi64 (void *__addr, __m256i __index, __m256i __v1, const int __scale) { __builtin_ia32_scatterdiv4di (__addr, (__mmask8) 0xFF, @@ -10710,7 +10710,7 @@ _mm256_i64scatter_epi64 (long long *__addr, __m256i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm256_mask_i64scatter_epi64 (long long *__addr, __mmask8 __mask, +_mm256_mask_i64scatter_epi64 (void *__addr, __mmask8 __mask, __m256i __index, __m256i __v1, const int __scale) { @@ -10720,7 +10720,7 @@ _mm256_mask_i64scatter_epi64 (long long *__addr, __mmask8 __mask, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_i64scatter_epi64 (long long *__addr, __m128i __index, +_mm_i64scatter_epi64 (void *__addr, __m128i __index, __m128i __v1, const int __scale) { __builtin_ia32_scatterdiv2di (__addr, (__mmask8) 0xFF, @@ -10730,7 +10730,7 @@ _mm_i64scatter_epi64 (long long *__addr, __m128i __index, extern __inline void __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) -_mm_mask_i64scatter_epi64 (long long *__addr, __mmask8 __mask, +_mm_mask_i64scatter_epi64 (void *__addr, __mmask8 __mask, __m128i __index, __m128i __v1, const int __scale) { @@ -12885,257 +12885,257 @@ _mm_cmple_epi64_mask (__m128i __X, __m128i __Y) #define _mm256_mmask_i32gather_ps(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m256) __builtin_ia32_gather3siv8sf ((__v8sf)(__m256)V1OLD, \ - (float const *)ADDR, \ + (void const *)ADDR, \ (__v8si)(__m256i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm_mmask_i32gather_ps(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m128) __builtin_ia32_gather3siv4sf ((__v4sf)(__m128)V1OLD, \ - (float const *)ADDR, \ + (void const *)ADDR, \ (__v4si)(__m128i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm256_mmask_i32gather_pd(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m256d) __builtin_ia32_gather3siv4df ((__v4df)(__m256d)V1OLD, \ - (double const *)ADDR, \ + (void const *)ADDR, \ (__v4si)(__m128i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm_mmask_i32gather_pd(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m128d) __builtin_ia32_gather3siv2df ((__v2df)(__m128d)V1OLD, \ - (double const *)ADDR, \ + (void const *)ADDR, \ (__v4si)(__m128i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm256_mmask_i64gather_ps(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m128) __builtin_ia32_gather3div8sf ((__v4sf)(__m128)V1OLD, \ - (float const *)ADDR, \ + (void const *)ADDR, \ (__v4di)(__m256i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm_mmask_i64gather_ps(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m128) __builtin_ia32_gather3div4sf ((__v4sf)(__m128)V1OLD, \ - (float const *)ADDR, \ + (void const *)ADDR, \ (__v2di)(__m128i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm256_mmask_i64gather_pd(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m256d) __builtin_ia32_gather3div4df ((__v4df)(__m256d)V1OLD, \ - (double const *)ADDR, \ + (void const *)ADDR, \ (__v4di)(__m256i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm_mmask_i64gather_pd(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m128d) __builtin_ia32_gather3div2df ((__v2df)(__m128d)V1OLD, \ - (double const *)ADDR, \ + (void const *)ADDR, \ (__v2di)(__m128i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm256_mmask_i32gather_epi32(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m256i) __builtin_ia32_gather3siv8si ((__v8si)(__m256i)V1OLD, \ - (int const *)ADDR, \ + (void const *)ADDR, \ (__v8si)(__m256i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm_mmask_i32gather_epi32(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m128i) __builtin_ia32_gather3siv4si ((__v4si)(__m128i)V1OLD, \ - (int const *)ADDR, \ + (void const *)ADDR, \ (__v4si)(__m128i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm256_mmask_i32gather_epi64(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m256i) __builtin_ia32_gather3siv4di ((__v4di)(__m256i)V1OLD, \ - (long long const *)ADDR, \ + (void const *)ADDR, \ (__v4si)(__m128i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm_mmask_i32gather_epi64(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m128i) __builtin_ia32_gather3siv2di ((__v2di)(__m128i)V1OLD, \ - (long long const *)ADDR, \ + (void const *)ADDR, \ (__v4si)(__m128i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm256_mmask_i64gather_epi32(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m128i) __builtin_ia32_gather3div8si ((__v4si)(__m128i)V1OLD, \ - (int const *)ADDR, \ + (void const *)ADDR, \ (__v4di)(__m256i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm_mmask_i64gather_epi32(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m128i) __builtin_ia32_gather3div4si ((__v4si)(__m128i)V1OLD, \ - (int const *)ADDR, \ + (void const *)ADDR, \ (__v2di)(__m128i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm256_mmask_i64gather_epi64(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m256i) __builtin_ia32_gather3div4di ((__v4di)(__m256i)V1OLD, \ - (long long const *)ADDR, \ + (void const *)ADDR, \ (__v4di)(__m256i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm_mmask_i64gather_epi64(V1OLD, MASK, INDEX, ADDR, SCALE) \ (__m128i) __builtin_ia32_gather3div2di ((__v2di)(__m128i)V1OLD, \ - (long long const *)ADDR, \ + (void const *)ADDR, \ (__v2di)(__m128i)INDEX, \ (__mmask8)MASK, (int)SCALE) #define _mm256_i32scatter_ps(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv8sf ((float *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scattersiv8sf ((void *)ADDR, (__mmask8)0xFF, \ (__v8si)(__m256i)INDEX, \ (__v8sf)(__m256)V1, (int)SCALE) #define _mm256_mask_i32scatter_ps(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv8sf ((float *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scattersiv8sf ((void *)ADDR, (__mmask8)MASK, \ (__v8si)(__m256i)INDEX, \ (__v8sf)(__m256)V1, (int)SCALE) #define _mm_i32scatter_ps(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv4sf ((float *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scattersiv4sf ((void *)ADDR, (__mmask8)0xFF, \ (__v4si)(__m128i)INDEX, \ (__v4sf)(__m128)V1, (int)SCALE) #define _mm_mask_i32scatter_ps(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv4sf ((float *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scattersiv4sf ((void *)ADDR, (__mmask8)MASK, \ (__v4si)(__m128i)INDEX, \ (__v4sf)(__m128)V1, (int)SCALE) #define _mm256_i32scatter_pd(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv4df ((double *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scattersiv4df ((void *)ADDR, (__mmask8)0xFF, \ (__v4si)(__m128i)INDEX, \ (__v4df)(__m256d)V1, (int)SCALE) #define _mm256_mask_i32scatter_pd(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv4df ((double *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scattersiv4df ((void *)ADDR, (__mmask8)MASK, \ (__v4si)(__m128i)INDEX, \ (__v4df)(__m256d)V1, (int)SCALE) #define _mm_i32scatter_pd(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv2df ((double *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scattersiv2df ((void *)ADDR, (__mmask8)0xFF, \ (__v4si)(__m128i)INDEX, \ (__v2df)(__m128d)V1, (int)SCALE) #define _mm_mask_i32scatter_pd(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv2df ((double *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scattersiv2df ((void *)ADDR, (__mmask8)MASK, \ (__v4si)(__m128i)INDEX, \ (__v2df)(__m128d)V1, (int)SCALE) #define _mm256_i64scatter_ps(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv8sf ((float *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scatterdiv8sf ((void *)ADDR, (__mmask8)0xFF, \ (__v4di)(__m256i)INDEX, \ (__v4sf)(__m128)V1, (int)SCALE) #define _mm256_mask_i64scatter_ps(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv8sf ((float *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scatterdiv8sf ((void *)ADDR, (__mmask8)MASK, \ (__v4di)(__m256i)INDEX, \ (__v4sf)(__m128)V1, (int)SCALE) #define _mm_i64scatter_ps(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv4sf ((float *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scatterdiv4sf ((void *)ADDR, (__mmask8)0xFF, \ (__v2di)(__m128i)INDEX, \ (__v4sf)(__m128)V1, (int)SCALE) #define _mm_mask_i64scatter_ps(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv4sf ((float *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scatterdiv4sf ((void *)ADDR, (__mmask8)MASK, \ (__v2di)(__m128i)INDEX, \ (__v4sf)(__m128)V1, (int)SCALE) #define _mm256_i64scatter_pd(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv4df ((double *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scatterdiv4df ((void *)ADDR, (__mmask8)0xFF, \ (__v4di)(__m256i)INDEX, \ (__v4df)(__m256d)V1, (int)SCALE) #define _mm256_mask_i64scatter_pd(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv4df ((double *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scatterdiv4df ((void *)ADDR, (__mmask8)MASK, \ (__v4di)(__m256i)INDEX, \ (__v4df)(__m256d)V1, (int)SCALE) #define _mm_i64scatter_pd(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv2df ((double *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scatterdiv2df ((void *)ADDR, (__mmask8)0xFF, \ (__v2di)(__m128i)INDEX, \ (__v2df)(__m128d)V1, (int)SCALE) #define _mm_mask_i64scatter_pd(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv2df ((double *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scatterdiv2df ((void *)ADDR, (__mmask8)MASK, \ (__v2di)(__m128i)INDEX, \ (__v2df)(__m128d)V1, (int)SCALE) #define _mm256_i32scatter_epi32(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv8si ((int *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scattersiv8si ((void *)ADDR, (__mmask8)0xFF, \ (__v8si)(__m256i)INDEX, \ (__v8si)(__m256i)V1, (int)SCALE) #define _mm256_mask_i32scatter_epi32(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv8si ((int *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scattersiv8si ((void *)ADDR, (__mmask8)MASK, \ (__v8si)(__m256i)INDEX, \ (__v8si)(__m256i)V1, (int)SCALE) #define _mm_i32scatter_epi32(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv4si ((int *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scattersiv4si ((void *)ADDR, (__mmask8)0xFF, \ (__v4si)(__m128i)INDEX, \ (__v4si)(__m128i)V1, (int)SCALE) #define _mm_mask_i32scatter_epi32(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv4si ((int *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scattersiv4si ((void *)ADDR, (__mmask8)MASK, \ (__v4si)(__m128i)INDEX, \ (__v4si)(__m128i)V1, (int)SCALE) #define _mm256_i32scatter_epi64(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv4di ((long long *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scattersiv4di ((void *)ADDR, (__mmask8)0xFF, \ (__v4si)(__m128i)INDEX, \ (__v4di)(__m256i)V1, (int)SCALE) #define _mm256_mask_i32scatter_epi64(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv4di ((long long *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scattersiv4di ((void *)ADDR, (__mmask8)MASK, \ (__v4si)(__m128i)INDEX, \ (__v4di)(__m256i)V1, (int)SCALE) #define _mm_i32scatter_epi64(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv2di ((long long *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scattersiv2di ((void *)ADDR, (__mmask8)0xFF, \ (__v4si)(__m128i)INDEX, \ (__v2di)(__m128i)V1, (int)SCALE) #define _mm_mask_i32scatter_epi64(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scattersiv2di ((long long *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scattersiv2di ((void *)ADDR, (__mmask8)MASK, \ (__v4si)(__m128i)INDEX, \ (__v2di)(__m128i)V1, (int)SCALE) #define _mm256_i64scatter_epi32(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv8si ((int *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scatterdiv8si ((void *)ADDR, (__mmask8)0xFF, \ (__v4di)(__m256i)INDEX, \ (__v4si)(__m128i)V1, (int)SCALE) #define _mm256_mask_i64scatter_epi32(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv8si ((int *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scatterdiv8si ((void *)ADDR, (__mmask8)MASK, \ (__v4di)(__m256i)INDEX, \ (__v4si)(__m128i)V1, (int)SCALE) #define _mm_i64scatter_epi32(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv4si ((int *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scatterdiv4si ((void *)ADDR, (__mmask8)0xFF, \ (__v2di)(__m128i)INDEX, \ (__v4si)(__m128i)V1, (int)SCALE) #define _mm_mask_i64scatter_epi32(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv4si ((int *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scatterdiv4si ((void *)ADDR, (__mmask8)MASK, \ (__v2di)(__m128i)INDEX, \ (__v4si)(__m128i)V1, (int)SCALE) #define _mm256_i64scatter_epi64(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv4di ((long long *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scatterdiv4di ((void *)ADDR, (__mmask8)0xFF, \ (__v4di)(__m256i)INDEX, \ (__v4di)(__m256i)V1, (int)SCALE) #define _mm256_mask_i64scatter_epi64(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv4di ((long long *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scatterdiv4di ((void *)ADDR, (__mmask8)MASK, \ (__v4di)(__m256i)INDEX, \ (__v4di)(__m256i)V1, (int)SCALE) #define _mm_i64scatter_epi64(ADDR, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv2di ((long long *)ADDR, (__mmask8)0xFF, \ + __builtin_ia32_scatterdiv2di ((void *)ADDR, (__mmask8)0xFF, \ (__v2di)(__m128i)INDEX, \ (__v2di)(__m128i)V1, (int)SCALE) #define _mm_mask_i64scatter_epi64(ADDR, MASK, INDEX, V1, SCALE) \ - __builtin_ia32_scatterdiv2di ((long long *)ADDR, (__mmask8)MASK, \ + __builtin_ia32_scatterdiv2di ((void *)ADDR, (__mmask8)MASK, \ (__v2di)(__m128i)INDEX, \ (__v2di)(__m128i)V1, (int)SCALE) diff --git a/gcc/config/i386/i386-builtin-types.def b/gcc/config/i386/i386-builtin-types.def index 18b3d4c5e4a..f287ca01197 100644 --- a/gcc/config/i386/i386-builtin-types.def +++ b/gcc/config/i386/i386-builtin-types.def @@ -1036,72 +1036,72 @@ DEF_FUNCTION_TYPE (V4SI, V4SI, PCINT, V2DI, V4SI, INT) DEF_FUNCTION_TYPE (V4SI, V4SI, PCINT, V4DI, V4SI, INT) DEF_FUNCTION_TYPE (V8SI, V8SI, PCINT, V4DI, V8SI, INT) -DEF_FUNCTION_TYPE (V16SF, V16SF, PCFLOAT, V16SI, HI, INT) DEF_FUNCTION_TYPE (V16SF, V16SF, PCFLOAT, V8DI, HI, INT) -DEF_FUNCTION_TYPE (V8DF, V8DF, PCDOUBLE, V8SI, QI, INT) DEF_FUNCTION_TYPE (V8DF, V8DF, PCDOUBLE, V16SI, QI, INT) -DEF_FUNCTION_TYPE (V8SF, V8SF, PCFLOAT, V8DI, QI, INT) -DEF_FUNCTION_TYPE (V8DF, V8DF, PCDOUBLE, V8DI, QI, INT) -DEF_FUNCTION_TYPE (V16SI, V16SI, PCINT, V16SI, HI, INT) DEF_FUNCTION_TYPE (V16SI, V16SI, PCINT, V8DI, HI, INT) -DEF_FUNCTION_TYPE (V8DI, V8DI, PCINT64, V8SI, QI, INT) DEF_FUNCTION_TYPE (V8DI, V8DI, PCINT64, V16SI, QI, INT) -DEF_FUNCTION_TYPE (V8SI, V8SI, PCINT, V8DI, QI, INT) -DEF_FUNCTION_TYPE (V8DI, V8DI, PCINT64, V8DI, QI, INT) -DEF_FUNCTION_TYPE (V2DF, V2DF, PCDOUBLE, V4SI, QI, INT) -DEF_FUNCTION_TYPE (V4DF, V4DF, PCDOUBLE, V4SI, QI, INT) DEF_FUNCTION_TYPE (V4DF, V4DF, PCDOUBLE, V8SI, QI, INT) -DEF_FUNCTION_TYPE (V2DF, V2DF, PCDOUBLE, V2DI, QI, INT) -DEF_FUNCTION_TYPE (V4DF, V4DF, PCDOUBLE, V4DI, QI, INT) -DEF_FUNCTION_TYPE (V4SF, V4SF, PCFLOAT, V4SI, QI, INT) -DEF_FUNCTION_TYPE (V8SF, V8SF, PCFLOAT, V8SI, QI, INT) -DEF_FUNCTION_TYPE (V4SF, V4SF, PCFLOAT, V2DI, QI, INT) -DEF_FUNCTION_TYPE (V4SF, V4SF, PCFLOAT, V4DI, QI, INT) DEF_FUNCTION_TYPE (V8SF, V8SF, PCFLOAT, V4DI, QI, INT) -DEF_FUNCTION_TYPE (V2DI, V2DI, PCINT64, V4SI, QI, INT) -DEF_FUNCTION_TYPE (V4DI, V4DI, PCINT64, V4SI, QI, INT) DEF_FUNCTION_TYPE (V4DI, V4DI, PCINT64, V8SI, QI, INT) -DEF_FUNCTION_TYPE (V2DI, V2DI, PCINT64, V2DI, QI, INT) -DEF_FUNCTION_TYPE (V4DI, V4DI, PCINT64, V4DI, QI, INT) -DEF_FUNCTION_TYPE (V4SI, V4SI, PCINT, V4SI, QI, INT) -DEF_FUNCTION_TYPE (V8SI, V8SI, PCINT, V8SI, QI, INT) -DEF_FUNCTION_TYPE (V4SI, V4SI, PCINT, V2DI, QI, INT) -DEF_FUNCTION_TYPE (V4SI, V4SI, PCINT, V4DI, QI, INT) DEF_FUNCTION_TYPE (V8SI, V8SI, PCINT, V4DI, QI, INT) -DEF_FUNCTION_TYPE (VOID, PFLOAT, HI, V16SI, V16SF, INT) -DEF_FUNCTION_TYPE (VOID, PFLOAT, QI, V8SI, V8SF, INT) -DEF_FUNCTION_TYPE (VOID, PFLOAT, QI, V4SI, V4SF, INT) -DEF_FUNCTION_TYPE (VOID, PDOUBLE, QI, V8SI, V8DF, INT) -DEF_FUNCTION_TYPE (VOID, PDOUBLE, QI, V4SI, V4DF, INT) -DEF_FUNCTION_TYPE (VOID, PDOUBLE, QI, V4SI, V2DF, INT) -DEF_FUNCTION_TYPE (VOID, PFLOAT, QI, V8DI, V8SF, INT) -DEF_FUNCTION_TYPE (VOID, PFLOAT, QI, V4DI, V4SF, INT) -DEF_FUNCTION_TYPE (VOID, PFLOAT, QI, V2DI, V4SF, INT) -DEF_FUNCTION_TYPE (VOID, PDOUBLE, QI, V8DI, V8DF, INT) -DEF_FUNCTION_TYPE (VOID, PDOUBLE, QI, V4DI, V4DF, INT) -DEF_FUNCTION_TYPE (VOID, PDOUBLE, QI, V2DI, V2DF, INT) -DEF_FUNCTION_TYPE (VOID, PINT, HI, V16SI, V16SI, INT) -DEF_FUNCTION_TYPE (VOID, PINT, QI, V8SI, V8SI, INT) -DEF_FUNCTION_TYPE (VOID, PINT, QI, V4SI, V4SI, INT) -DEF_FUNCTION_TYPE (VOID, PLONGLONG, QI, V8SI, V8DI, INT) -DEF_FUNCTION_TYPE (VOID, PLONGLONG, QI, V4SI, V4DI, INT) -DEF_FUNCTION_TYPE (VOID, PLONGLONG, QI, V4SI, V2DI, INT) -DEF_FUNCTION_TYPE (VOID, PINT, QI, V8DI, V8SI, INT) -DEF_FUNCTION_TYPE (VOID, PINT, QI, V4DI, V4SI, INT) -DEF_FUNCTION_TYPE (VOID, PINT, QI, V2DI, V4SI, INT) -DEF_FUNCTION_TYPE (VOID, PLONGLONG, QI, V8DI, V8DI, INT) DEF_FUNCTION_TYPE (VOID, PFLOAT, HI, V8DI, V16SF, INT) DEF_FUNCTION_TYPE (VOID, PDOUBLE, QI, V16SI, V8DF, INT) DEF_FUNCTION_TYPE (VOID, PINT, HI, V8DI, V16SI, INT) DEF_FUNCTION_TYPE (VOID, PLONGLONG, QI, V16SI, V8DI, INT) -DEF_FUNCTION_TYPE (VOID, QI, V8SI, PCINT64, INT, INT) -DEF_FUNCTION_TYPE (VOID, PLONGLONG, QI, V4DI, V4DI, INT) -DEF_FUNCTION_TYPE (VOID, PLONGLONG, QI, V2DI, V2DI, INT) -DEF_FUNCTION_TYPE (VOID, HI, V16SI, PCINT, INT, INT) -DEF_FUNCTION_TYPE (VOID, QI, V8DI, PCINT64, INT, INT) -DEF_FUNCTION_TYPE (VOID, QI, V8DI, PCINT, INT, INT) + +DEF_FUNCTION_TYPE (V16SF, V16SF, PCVOID, V16SI, HI, INT) +DEF_FUNCTION_TYPE (V8DF, V8DF, PCVOID, V8SI, QI, INT) +DEF_FUNCTION_TYPE (V8SF, V8SF, PCVOID, V8DI, QI, INT) +DEF_FUNCTION_TYPE (V8DF, V8DF, PCVOID, V8DI, QI, INT) +DEF_FUNCTION_TYPE (V16SI, V16SI, PCVOID, V16SI, HI, INT) +DEF_FUNCTION_TYPE (V8DI, V8DI, PCVOID, V8SI, QI, INT) +DEF_FUNCTION_TYPE (V8SI, V8SI, PCVOID, V8DI, QI, INT) +DEF_FUNCTION_TYPE (V8DI, V8DI, PCVOID, V8DI, QI, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, HI, V16SI, V16SF, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V8SI, V8DF, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V8DI, V8SF, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V8DI, V8DF, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, HI, V16SI, V16SI, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V8SI, V8DI, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V8DI, V8SI, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V8DI, V8DI, INT) +DEF_FUNCTION_TYPE (V2DF, V2DF, PCVOID, V4SI, QI, INT) +DEF_FUNCTION_TYPE (V4DF, V4DF, PCVOID, V4SI, QI, INT) +DEF_FUNCTION_TYPE (V2DF, V2DF, PCVOID, V2DI, QI, INT) +DEF_FUNCTION_TYPE (V4DF, V4DF, PCVOID, V4DI, QI, INT) +DEF_FUNCTION_TYPE (V4SF, V4SF, PCVOID, V4SI, QI, INT) +DEF_FUNCTION_TYPE (V8SF, V8SF, PCVOID, V8SI, QI, INT) +DEF_FUNCTION_TYPE (V4SF, V4SF, PCVOID, V2DI, QI, INT) +DEF_FUNCTION_TYPE (V4SF, V4SF, PCVOID, V4DI, QI, INT) +DEF_FUNCTION_TYPE (V2DI, V2DI, PCVOID, V4SI, QI, INT) +DEF_FUNCTION_TYPE (V4DI, V4DI, PCVOID, V4SI, QI, INT) +DEF_FUNCTION_TYPE (V2DI, V2DI, PCVOID, V2DI, QI, INT) +DEF_FUNCTION_TYPE (V4DI, V4DI, PCVOID, V4DI, QI, INT) +DEF_FUNCTION_TYPE (V4SI, V4SI, PCVOID, V4SI, QI, INT) +DEF_FUNCTION_TYPE (V8SI, V8SI, PCVOID, V8SI, QI, INT) +DEF_FUNCTION_TYPE (V4SI, V4SI, PCVOID, V2DI, QI, INT) +DEF_FUNCTION_TYPE (V4SI, V4SI, PCVOID, V4DI, QI, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V8SI, V8SF, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V4SI, V4SF, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V4SI, V4DF, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V4SI, V2DF, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V4DI, V4SF, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V2DI, V4SF, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V4DI, V4DF, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V2DI, V2DF, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V8SI, V8SI, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V4SI, V4SI, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V4SI, V4DI, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V4SI, V2DI, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V4DI, V4SI, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V2DI, V4SI, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V4DI, V4DI, INT) +DEF_FUNCTION_TYPE (VOID, PVOID, QI, V2DI, V2DI, INT) +DEF_FUNCTION_TYPE (VOID, QI, V8SI, PCVOID, INT, INT) +DEF_FUNCTION_TYPE (VOID, HI, V16SI, PCVOID, INT, INT) +DEF_FUNCTION_TYPE (VOID, QI, V8DI, PCVOID, INT, INT) DEF_FUNCTION_TYPE_ALIAS (V2DF_FTYPE_V2DF, ROUND) DEF_FUNCTION_TYPE_ALIAS (V4DF_FTYPE_V4DF, ROUND) diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 3327036573c..eccb5d2cb22 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -31671,35 +31671,35 @@ ix86_init_mmx_sse_builtins (void) /* AVX512F */ def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_gathersiv16sf", - V16SF_FTYPE_V16SF_PCFLOAT_V16SI_HI_INT, + V16SF_FTYPE_V16SF_PCVOID_V16SI_HI_INT, IX86_BUILTIN_GATHER3SIV16SF); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_gathersiv8df", - V8DF_FTYPE_V8DF_PCDOUBLE_V8SI_QI_INT, + V8DF_FTYPE_V8DF_PCVOID_V8SI_QI_INT, IX86_BUILTIN_GATHER3SIV8DF); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_gatherdiv16sf", - V8SF_FTYPE_V8SF_PCFLOAT_V8DI_QI_INT, + V8SF_FTYPE_V8SF_PCVOID_V8DI_QI_INT, IX86_BUILTIN_GATHER3DIV16SF); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_gatherdiv8df", - V8DF_FTYPE_V8DF_PCDOUBLE_V8DI_QI_INT, + V8DF_FTYPE_V8DF_PCVOID_V8DI_QI_INT, IX86_BUILTIN_GATHER3DIV8DF); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_gathersiv16si", - V16SI_FTYPE_V16SI_PCINT_V16SI_HI_INT, + V16SI_FTYPE_V16SI_PCVOID_V16SI_HI_INT, IX86_BUILTIN_GATHER3SIV16SI); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_gathersiv8di", - V8DI_FTYPE_V8DI_PCINT64_V8SI_QI_INT, + V8DI_FTYPE_V8DI_PCVOID_V8SI_QI_INT, IX86_BUILTIN_GATHER3SIV8DI); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_gatherdiv16si", - V8SI_FTYPE_V8SI_PCINT_V8DI_QI_INT, + V8SI_FTYPE_V8SI_PCVOID_V8DI_QI_INT, IX86_BUILTIN_GATHER3DIV16SI); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_gatherdiv8di", - V8DI_FTYPE_V8DI_PCINT64_V8DI_QI_INT, + V8DI_FTYPE_V8DI_PCVOID_V8DI_QI_INT, IX86_BUILTIN_GATHER3DIV8DI); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_gatheraltsiv8df ", @@ -31719,100 +31719,100 @@ ix86_init_mmx_sse_builtins (void) IX86_BUILTIN_GATHER3ALTDIV16SI); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_scattersiv16sf", - VOID_FTYPE_PFLOAT_HI_V16SI_V16SF_INT, + VOID_FTYPE_PVOID_HI_V16SI_V16SF_INT, IX86_BUILTIN_SCATTERSIV16SF); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_scattersiv8df", - VOID_FTYPE_PDOUBLE_QI_V8SI_V8DF_INT, + VOID_FTYPE_PVOID_QI_V8SI_V8DF_INT, IX86_BUILTIN_SCATTERSIV8DF); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_scatterdiv16sf", - VOID_FTYPE_PFLOAT_QI_V8DI_V8SF_INT, + VOID_FTYPE_PVOID_QI_V8DI_V8SF_INT, IX86_BUILTIN_SCATTERDIV16SF); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_scatterdiv8df", - VOID_FTYPE_PDOUBLE_QI_V8DI_V8DF_INT, + VOID_FTYPE_PVOID_QI_V8DI_V8DF_INT, IX86_BUILTIN_SCATTERDIV8DF); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_scattersiv16si", - VOID_FTYPE_PINT_HI_V16SI_V16SI_INT, + VOID_FTYPE_PVOID_HI_V16SI_V16SI_INT, IX86_BUILTIN_SCATTERSIV16SI); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_scattersiv8di", - VOID_FTYPE_PLONGLONG_QI_V8SI_V8DI_INT, + VOID_FTYPE_PVOID_QI_V8SI_V8DI_INT, IX86_BUILTIN_SCATTERSIV8DI); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_scatterdiv16si", - VOID_FTYPE_PINT_QI_V8DI_V8SI_INT, + VOID_FTYPE_PVOID_QI_V8DI_V8SI_INT, IX86_BUILTIN_SCATTERDIV16SI); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_scatterdiv8di", - VOID_FTYPE_PLONGLONG_QI_V8DI_V8DI_INT, + VOID_FTYPE_PVOID_QI_V8DI_V8DI_INT, IX86_BUILTIN_SCATTERDIV8DI); /* AVX512VL */ def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3siv2df", - V2DF_FTYPE_V2DF_PCDOUBLE_V4SI_QI_INT, + V2DF_FTYPE_V2DF_PCVOID_V4SI_QI_INT, IX86_BUILTIN_GATHER3SIV2DF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3siv4df", - V4DF_FTYPE_V4DF_PCDOUBLE_V4SI_QI_INT, + V4DF_FTYPE_V4DF_PCVOID_V4SI_QI_INT, IX86_BUILTIN_GATHER3SIV4DF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3div2df", - V2DF_FTYPE_V2DF_PCDOUBLE_V2DI_QI_INT, + V2DF_FTYPE_V2DF_PCVOID_V2DI_QI_INT, IX86_BUILTIN_GATHER3DIV2DF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3div4df", - V4DF_FTYPE_V4DF_PCDOUBLE_V4DI_QI_INT, + V4DF_FTYPE_V4DF_PCVOID_V4DI_QI_INT, IX86_BUILTIN_GATHER3DIV4DF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3siv4sf", - V4SF_FTYPE_V4SF_PCFLOAT_V4SI_QI_INT, + V4SF_FTYPE_V4SF_PCVOID_V4SI_QI_INT, IX86_BUILTIN_GATHER3SIV4SF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3siv8sf", - V8SF_FTYPE_V8SF_PCFLOAT_V8SI_QI_INT, + V8SF_FTYPE_V8SF_PCVOID_V8SI_QI_INT, IX86_BUILTIN_GATHER3SIV8SF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3div4sf", - V4SF_FTYPE_V4SF_PCFLOAT_V2DI_QI_INT, + V4SF_FTYPE_V4SF_PCVOID_V2DI_QI_INT, IX86_BUILTIN_GATHER3DIV4SF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3div8sf", - V4SF_FTYPE_V4SF_PCFLOAT_V4DI_QI_INT, + V4SF_FTYPE_V4SF_PCVOID_V4DI_QI_INT, IX86_BUILTIN_GATHER3DIV8SF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3siv2di", - V2DI_FTYPE_V2DI_PCINT64_V4SI_QI_INT, + V2DI_FTYPE_V2DI_PCVOID_V4SI_QI_INT, IX86_BUILTIN_GATHER3SIV2DI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3siv4di", - V4DI_FTYPE_V4DI_PCINT64_V4SI_QI_INT, + V4DI_FTYPE_V4DI_PCVOID_V4SI_QI_INT, IX86_BUILTIN_GATHER3SIV4DI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3div2di", - V2DI_FTYPE_V2DI_PCINT64_V2DI_QI_INT, + V2DI_FTYPE_V2DI_PCVOID_V2DI_QI_INT, IX86_BUILTIN_GATHER3DIV2DI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3div4di", - V4DI_FTYPE_V4DI_PCINT64_V4DI_QI_INT, + V4DI_FTYPE_V4DI_PCVOID_V4DI_QI_INT, IX86_BUILTIN_GATHER3DIV4DI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3siv4si", - V4SI_FTYPE_V4SI_PCINT_V4SI_QI_INT, + V4SI_FTYPE_V4SI_PCVOID_V4SI_QI_INT, IX86_BUILTIN_GATHER3SIV4SI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3siv8si", - V8SI_FTYPE_V8SI_PCINT_V8SI_QI_INT, + V8SI_FTYPE_V8SI_PCVOID_V8SI_QI_INT, IX86_BUILTIN_GATHER3SIV8SI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3div4si", - V4SI_FTYPE_V4SI_PCINT_V2DI_QI_INT, + V4SI_FTYPE_V4SI_PCVOID_V2DI_QI_INT, IX86_BUILTIN_GATHER3DIV4SI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3div8si", - V4SI_FTYPE_V4SI_PCINT_V4DI_QI_INT, + V4SI_FTYPE_V4SI_PCVOID_V4DI_QI_INT, IX86_BUILTIN_GATHER3DIV8SI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_gather3altsiv4df ", @@ -31832,67 +31832,67 @@ ix86_init_mmx_sse_builtins (void) IX86_BUILTIN_GATHER3ALTDIV8SI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scattersiv8sf", - VOID_FTYPE_PFLOAT_QI_V8SI_V8SF_INT, + VOID_FTYPE_PVOID_QI_V8SI_V8SF_INT, IX86_BUILTIN_SCATTERSIV8SF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scattersiv4sf", - VOID_FTYPE_PFLOAT_QI_V4SI_V4SF_INT, + VOID_FTYPE_PVOID_QI_V4SI_V4SF_INT, IX86_BUILTIN_SCATTERSIV4SF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scattersiv4df", - VOID_FTYPE_PDOUBLE_QI_V4SI_V4DF_INT, + VOID_FTYPE_PVOID_QI_V4SI_V4DF_INT, IX86_BUILTIN_SCATTERSIV4DF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scattersiv2df", - VOID_FTYPE_PDOUBLE_QI_V4SI_V2DF_INT, + VOID_FTYPE_PVOID_QI_V4SI_V2DF_INT, IX86_BUILTIN_SCATTERSIV2DF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scatterdiv8sf", - VOID_FTYPE_PFLOAT_QI_V4DI_V4SF_INT, + VOID_FTYPE_PVOID_QI_V4DI_V4SF_INT, IX86_BUILTIN_SCATTERDIV8SF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scatterdiv4sf", - VOID_FTYPE_PFLOAT_QI_V2DI_V4SF_INT, + VOID_FTYPE_PVOID_QI_V2DI_V4SF_INT, IX86_BUILTIN_SCATTERDIV4SF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scatterdiv4df", - VOID_FTYPE_PDOUBLE_QI_V4DI_V4DF_INT, + VOID_FTYPE_PVOID_QI_V4DI_V4DF_INT, IX86_BUILTIN_SCATTERDIV4DF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scatterdiv2df", - VOID_FTYPE_PDOUBLE_QI_V2DI_V2DF_INT, + VOID_FTYPE_PVOID_QI_V2DI_V2DF_INT, IX86_BUILTIN_SCATTERDIV2DF); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scattersiv8si", - VOID_FTYPE_PINT_QI_V8SI_V8SI_INT, + VOID_FTYPE_PVOID_QI_V8SI_V8SI_INT, IX86_BUILTIN_SCATTERSIV8SI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scattersiv4si", - VOID_FTYPE_PINT_QI_V4SI_V4SI_INT, + VOID_FTYPE_PVOID_QI_V4SI_V4SI_INT, IX86_BUILTIN_SCATTERSIV4SI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scattersiv4di", - VOID_FTYPE_PLONGLONG_QI_V4SI_V4DI_INT, + VOID_FTYPE_PVOID_QI_V4SI_V4DI_INT, IX86_BUILTIN_SCATTERSIV4DI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scattersiv2di", - VOID_FTYPE_PLONGLONG_QI_V4SI_V2DI_INT, + VOID_FTYPE_PVOID_QI_V4SI_V2DI_INT, IX86_BUILTIN_SCATTERSIV2DI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scatterdiv8si", - VOID_FTYPE_PINT_QI_V4DI_V4SI_INT, + VOID_FTYPE_PVOID_QI_V4DI_V4SI_INT, IX86_BUILTIN_SCATTERDIV8SI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scatterdiv4si", - VOID_FTYPE_PINT_QI_V2DI_V4SI_INT, + VOID_FTYPE_PVOID_QI_V2DI_V4SI_INT, IX86_BUILTIN_SCATTERDIV4SI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scatterdiv4di", - VOID_FTYPE_PLONGLONG_QI_V4DI_V4DI_INT, + VOID_FTYPE_PVOID_QI_V4DI_V4DI_INT, IX86_BUILTIN_SCATTERDIV4DI); def_builtin (OPTION_MASK_ISA_AVX512VL, "__builtin_ia32_scatterdiv2di", - VOID_FTYPE_PLONGLONG_QI_V2DI_V2DI_INT, + VOID_FTYPE_PVOID_QI_V2DI_V2DI_INT, IX86_BUILTIN_SCATTERDIV2DI); def_builtin (OPTION_MASK_ISA_AVX512F, "__builtin_ia32_scatteraltsiv8df ", VOID_FTYPE_PDOUBLE_QI_V16SI_V8DF_INT, @@ -31912,28 +31912,28 @@ ix86_init_mmx_sse_builtins (void) /* AVX512PF */ def_builtin (OPTION_MASK_ISA_AVX512PF, "__builtin_ia32_gatherpfdpd", - VOID_FTYPE_QI_V8SI_PCINT64_INT_INT, + VOID_FTYPE_QI_V8SI_PCVOID_INT_INT, IX86_BUILTIN_GATHERPFDPD); def_builtin (OPTION_MASK_ISA_AVX512PF, "__builtin_ia32_gatherpfdps", - VOID_FTYPE_HI_V16SI_PCINT_INT_INT, + VOID_FTYPE_HI_V16SI_PCVOID_INT_INT, IX86_BUILTIN_GATHERPFDPS); def_builtin (OPTION_MASK_ISA_AVX512PF, "__builtin_ia32_gatherpfqpd", - VOID_FTYPE_QI_V8DI_PCINT64_INT_INT, + VOID_FTYPE_QI_V8DI_PCVOID_INT_INT, IX86_BUILTIN_GATHERPFQPD); def_builtin (OPTION_MASK_ISA_AVX512PF, "__builtin_ia32_gatherpfqps", - VOID_FTYPE_QI_V8DI_PCINT_INT_INT, + VOID_FTYPE_QI_V8DI_PCVOID_INT_INT, IX86_BUILTIN_GATHERPFQPS); def_builtin (OPTION_MASK_ISA_AVX512PF, "__builtin_ia32_scatterpfdpd", - VOID_FTYPE_QI_V8SI_PCINT64_INT_INT, + VOID_FTYPE_QI_V8SI_PCVOID_INT_INT, IX86_BUILTIN_SCATTERPFDPD); def_builtin (OPTION_MASK_ISA_AVX512PF, "__builtin_ia32_scatterpfdps", - VOID_FTYPE_HI_V16SI_PCINT_INT_INT, + VOID_FTYPE_HI_V16SI_PCVOID_INT_INT, IX86_BUILTIN_SCATTERPFDPS); def_builtin (OPTION_MASK_ISA_AVX512PF, "__builtin_ia32_scatterpfqpd", - VOID_FTYPE_QI_V8DI_PCINT64_INT_INT, + VOID_FTYPE_QI_V8DI_PCVOID_INT_INT, IX86_BUILTIN_SCATTERPFQPD); def_builtin (OPTION_MASK_ISA_AVX512PF, "__builtin_ia32_scatterpfqps", - VOID_FTYPE_QI_V8DI_PCINT_INT_INT, + VOID_FTYPE_QI_V8DI_PCVOID_INT_INT, IX86_BUILTIN_SCATTERPFQPS); /* SHA */ -- 2.30.2