public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH][GCC6] Backport PR target/76731 fix
@ 2017-02-15 12:08 Koval, Julia
  2017-02-16  8:32 ` Uros Bizjak
  0 siblings, 1 reply; 4+ messages in thread
From: Koval, Julia @ 2017-02-15 12:08 UTC (permalink / raw)
  To: GCC Patches; +Cc: Uros Bizjak

[-- Attachment #1: Type: text/plain, Size: 7194 bytes --]

Hi,
Is it ok to backport this fix to GCC6 branch?

	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.

Julia

[-- Attachment #2: gcc6_backport_pr76731 --]
[-- Type: application/octet-stream, Size: 89456 bytes --]

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 22144b2..a5a3ec5 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,157 @@
+2017-01-17  Julia Koval  <julia.koval@intel.com>
+
+	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-15  Jakub Jelinek  <jakub@redhat.com>
 
 	Backported from mainline
diff --git a/gcc/config/i386/avx512fintrin.h b/gcc/config/i386/avx512fintrin.h
index 305ed55..f89330b 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 06599c3..3162fef 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 d627ad8..ce2832e 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 e055232..70f6b9c 100644
--- a/gcc/config/i386/i386-builtin-types.def
+++ b/gcc/config/i386/i386-builtin-types.def
@@ -969,72 +969,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 53afcbb..d2ea643 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -35719,35 +35719,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 ",
@@ -35767,100 +35767,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 ",
@@ -35880,67 +35880,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,
@@ -35960,28 +35960,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 */

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH][GCC6] Backport PR target/76731 fix
  2017-02-15 12:08 [PATCH][GCC6] Backport PR target/76731 fix Koval, Julia
@ 2017-02-16  8:32 ` Uros Bizjak
  2017-02-16 10:33   ` Koval, Julia
  0 siblings, 1 reply; 4+ messages in thread
From: Uros Bizjak @ 2017-02-16  8:32 UTC (permalink / raw)
  To: Koval, Julia; +Cc: GCC Patches

On Wed, Feb 15, 2017 at 1:03 PM, Koval, Julia <julia.koval@intel.com> wrote:
> Hi,
> Is it ok to backport this fix to GCC6 branch?
>
>         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.

OK.

Thanks,
Uros.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* RE: [PATCH][GCC6] Backport PR target/76731 fix
  2017-02-16  8:32 ` Uros Bizjak
@ 2017-02-16 10:33   ` Koval, Julia
  2017-02-16 10:56     ` Uros Bizjak
  0 siblings, 1 reply; 4+ messages in thread
From: Koval, Julia @ 2017-02-16 10:33 UTC (permalink / raw)
  To: Uros Bizjak; +Cc: GCC Patches

Can you commit it for me please? Also these intrinsics are very old, can I also backport it to GCC5 and GCC4.9?

Thanks,
Julia

-----Original Message-----
From: Uros Bizjak [mailto:ubizjak@gmail.com] 
Sent: Thursday, February 16, 2017 9:27 AM
To: Koval, Julia <julia.koval@intel.com>
Cc: GCC Patches <gcc-patches@gcc.gnu.org>
Subject: Re: [PATCH][GCC6] Backport PR target/76731 fix

On Wed, Feb 15, 2017 at 1:03 PM, Koval, Julia <julia.koval@intel.com> wrote:
> Hi,
> Is it ok to backport this fix to GCC6 branch?
>
>         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.

OK.

Thanks,
Uros.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH][GCC6] Backport PR target/76731 fix
  2017-02-16 10:33   ` Koval, Julia
@ 2017-02-16 10:56     ` Uros Bizjak
  0 siblings, 0 replies; 4+ messages in thread
From: Uros Bizjak @ 2017-02-16 10:56 UTC (permalink / raw)
  To: Koval, Julia; +Cc: GCC Patches

On Thu, Feb 16, 2017 at 11:21 AM, Koval, Julia <julia.koval@intel.com> wrote:
> Can you commit it for me please? Also these intrinsics are very old, can I also backport it to GCC5 and GCC4.9?

Backport to gcc-5 is OK, but gcc-4.9 branch is closed.

Uros.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-02-16 10:51 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-02-15 12:08 [PATCH][GCC6] Backport PR target/76731 fix Koval, Julia
2017-02-16  8:32 ` Uros Bizjak
2017-02-16 10:33   ` Koval, Julia
2017-02-16 10:56     ` Uros Bizjak

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).