From: Julia Koval Date: Fri, 17 Feb 2017 16:35:37 +0000 (+0100) Subject: re PR target/76731 ([AVX512] _mm512_i32gather_epi32 and other scatter/gather routines... X-Git-Tag: releases/gcc-5.5.0~515 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9cdd568036ada33c6cd7649c6f55e4359f1ca5a5;p=thirdparty%2Fgcc.git 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: r245537 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fae537683761..1c3c948766f2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,157 @@ +2017-02-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-02-16 Carl Love Backport from mainline commit r245460 on 2017-02-14 diff --git a/gcc/config/i386/avx512fintrin.h b/gcc/config/i386/avx512fintrin.h index 184e9e88d648..c7a91c1db246 100644 --- a/gcc/config/i386/avx512fintrin.h +++ b/gcc/config/i386/avx512fintrin.h @@ -9209,7 +9209,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; @@ -9223,7 +9223,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, @@ -9233,7 +9233,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; @@ -9247,7 +9247,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, @@ -9257,7 +9257,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; @@ -9271,7 +9271,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, @@ -9281,7 +9281,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; @@ -9295,7 +9295,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, @@ -9305,7 +9305,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; @@ -9319,7 +9319,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, @@ -9329,7 +9329,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; @@ -9343,7 +9343,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, @@ -9354,7 +9354,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; @@ -9368,7 +9368,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, @@ -9378,7 +9378,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; @@ -9392,7 +9392,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, @@ -9403,7 +9403,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); @@ -9411,7 +9411,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, @@ -9420,7 +9420,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, @@ -9429,7 +9429,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, @@ -9438,7 +9438,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); @@ -9446,7 +9446,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, @@ -9455,7 +9455,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, @@ -9464,7 +9464,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, @@ -9473,7 +9473,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, @@ -9482,7 +9482,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, @@ -9491,7 +9491,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, @@ -9500,7 +9500,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, @@ -9509,7 +9509,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, @@ -9518,7 +9518,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, @@ -9527,7 +9527,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, @@ -9536,7 +9536,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, @@ -9545,177 +9545,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 433e182344bf..b6781e7deedf 100644 --- a/gcc/config/i386/avx512pfintrin.h +++ b/gcc/config/i386/avx512pfintrin.h @@ -49,37 +49,33 @@ 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 +83,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 +92,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 +101,7 @@ __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 +109,7 @@ __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 +117,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 +126,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 +135,7 @@ __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 +143,57 @@ __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 36771f6ffe21..4ae0c5442fc8 100644 --- a/gcc/config/i386/avx512vlintrin.h +++ b/gcc/config/i386/avx512vlintrin.h @@ -10216,7 +10216,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, @@ -10228,7 +10228,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, @@ -10240,7 +10240,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, @@ -10252,7 +10252,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, @@ -10264,7 +10264,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, @@ -10276,7 +10276,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, @@ -10288,7 +10288,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, @@ -10300,7 +10300,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, @@ -10312,7 +10312,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, @@ -10324,7 +10324,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, @@ -10336,7 +10336,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, @@ -10348,7 +10348,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, @@ -10360,7 +10360,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, @@ -10372,7 +10372,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, @@ -10384,7 +10384,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, @@ -10396,7 +10396,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, @@ -10407,7 +10407,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, @@ -10417,7 +10417,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) { @@ -10427,7 +10427,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, @@ -10437,7 +10437,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) { @@ -10447,7 +10447,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, @@ -10457,7 +10457,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) { @@ -10467,7 +10467,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, @@ -10477,7 +10477,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) { @@ -10487,7 +10487,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, @@ -10497,7 +10497,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) { @@ -10507,7 +10507,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, @@ -10517,7 +10517,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) { @@ -10527,7 +10527,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, @@ -10537,7 +10537,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) { @@ -10547,7 +10547,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, @@ -10557,7 +10557,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) { @@ -10567,7 +10567,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, @@ -10577,7 +10577,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) { @@ -10587,7 +10587,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, @@ -10597,7 +10597,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) { @@ -10607,7 +10607,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, @@ -10617,7 +10617,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) { @@ -10627,7 +10627,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, @@ -10637,7 +10637,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) { @@ -10647,7 +10647,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, @@ -10657,7 +10657,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) { @@ -10667,7 +10667,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, @@ -10677,7 +10677,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) { @@ -10687,7 +10687,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, @@ -10697,7 +10697,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) { @@ -10707,7 +10707,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, @@ -10717,7 +10717,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) { @@ -12868,257 +12868,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 2459c440ba5d..bca9727692d1 100644 --- a/gcc/config/i386/i386-builtin-types.def +++ b/gcc/config/i386/i386-builtin-types.def @@ -1117,37 +1117,13 @@ 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) @@ -1172,13 +1148,62 @@ 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 3cbf2e137df8..3adceffb81ea 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -34020,35 +34020,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 ", @@ -34068,100 +34068,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 ", @@ -34181,93 +34181,93 @@ 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); /* 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 */