Commit d7727ce4 by Jakub Jelinek

re PR target/83488 (ICE on a CET test-case)

	PR target/83488
	* config/i386/avx512vnniintrin.h: Don't check for __AVX512F__ nor
	enable avx512f explicitly in #pragma GCC target.
	* config/i386/i386-builtin.def (__builtin_ia32_vpdpbusd_v8si,
	__builtin_ia32_vpdpbusd_v8si_mask, __builtin_ia32_vpdpbusd_v8si_maskz,
	__builtin_ia32_vpdpbusd_v4si, __builtin_ia32_vpdpbusd_v4si_mask,
	__builtin_ia32_vpdpbusd_v4si_maskz, __builtin_ia32_vpdpbusds_v8si,
	__builtin_ia32_vpdpbusds_v8si_mask,
	__builtin_ia32_vpdpbusds_v8si_maskz, __builtin_ia32_vpdpbusds_v4si,
	__builtin_ia32_vpdpbusds_v4si_mask,
	__builtin_ia32_vpdpbusds_v4si_maskz, __builtin_ia32_vpdpwssd_v8si,
	__builtin_ia32_vpdpwssd_v8si_mask, __builtin_ia32_vpdpwssd_v8si_maskz,
	__builtin_ia32_vpdpwssd_v4si, __builtin_ia32_vpdpwssd_v4si_mask,
	__builtin_ia32_vpdpwssd_v4si_maskz, __builtin_ia32_vpdpwssds_v8si,
	__builtin_ia32_vpdpwssds_v8si_mask,
	__builtin_ia32_vpdpwssds_v8si_maskz, __builtin_ia32_vpdpwssds_v4si,
	__builtin_ia32_vpdpwssds_v4si_mask,
	__builtin_ia32_vpdpwssds_v4si_maskz): Use
	OPTION_MASK_ISA_AVX512VNNI | OPTION_MASK_ISA_AVX512VL instead of
	just OPTION_MASK_ISA_AVX512VNNI.

	* gcc.target/i386/pr83488-2.c: New test.
	* gcc.target/i386/pr83488-3.c: New test.

From-SVN: r255979
parent a50e9b2f
2017-12-22 Jakub Jelinek <jakub@redhat.com>
PR target/83488
* config/i386/avx512vnniintrin.h: Don't check for __AVX512F__ nor
enable avx512f explicitly in #pragma GCC target.
* config/i386/i386-builtin.def (__builtin_ia32_vpdpbusd_v8si,
__builtin_ia32_vpdpbusd_v8si_mask, __builtin_ia32_vpdpbusd_v8si_maskz,
__builtin_ia32_vpdpbusd_v4si, __builtin_ia32_vpdpbusd_v4si_mask,
__builtin_ia32_vpdpbusd_v4si_maskz, __builtin_ia32_vpdpbusds_v8si,
__builtin_ia32_vpdpbusds_v8si_mask,
__builtin_ia32_vpdpbusds_v8si_maskz, __builtin_ia32_vpdpbusds_v4si,
__builtin_ia32_vpdpbusds_v4si_mask,
__builtin_ia32_vpdpbusds_v4si_maskz, __builtin_ia32_vpdpwssd_v8si,
__builtin_ia32_vpdpwssd_v8si_mask, __builtin_ia32_vpdpwssd_v8si_maskz,
__builtin_ia32_vpdpwssd_v4si, __builtin_ia32_vpdpwssd_v4si_mask,
__builtin_ia32_vpdpwssd_v4si_maskz, __builtin_ia32_vpdpwssds_v8si,
__builtin_ia32_vpdpwssds_v8si_mask,
__builtin_ia32_vpdpwssds_v8si_maskz, __builtin_ia32_vpdpwssds_v4si,
__builtin_ia32_vpdpwssds_v4si_mask,
__builtin_ia32_vpdpwssds_v4si_maskz): Use
OPTION_MASK_ISA_AVX512VNNI | OPTION_MASK_ISA_AVX512VL instead of
just OPTION_MASK_ISA_AVX512VNNI.
2017-12-22 Martin Jambor <mjambor@suse.cz>
PR lto/82027
......@@ -5,7 +28,7 @@
clones.
2017-12-22 Julia Koval <julia.koval@intel.com>
Sebastian Peryt <sebastian.peryt@intel.com>
Sebastian Peryt <sebastian.peryt@intel.com>
* common/config/i386/i386-common.c (OPTION_MASK_ISA_AVX512BITALG_SET,
OPTION_MASK_ISA_AVX512BITALG_UNSET): New.
......@@ -28,9 +28,9 @@
#ifndef __AVX512VNNIINTRIN_H_INCLUDED
#define __AVX512VNNIINTRIN_H_INCLUDED
#if !defined(__AVX512VNNI__) || !defined(__AVX512F__)
#if !defined(__AVX512VNNI__)
#pragma GCC push_options
#pragma GCC target("avx512vnni,avx512f")
#pragma GCC target("avx512vnni")
#define __DISABLE_AVX512VNNI__
#endif /* __AVX512VNNI__ */
......
2017-12-22 Jakub Jelinek <jakub@redhat.com>
PR target/83488
* gcc.target/i386/pr83488-2.c: New test.
* gcc.target/i386/pr83488-3.c: New test.
2017-12-22 Martin Jambor <mjambor@suse.cz>
PR lto/82027
* g++.dg/lto/pr82027_0.C: New test.
2017-12-22 Julia Koval <julia.koval@intel.com>
Sebastian Peryt <sebastian.peryt@intel.com>
Sebastian Peryt <sebastian.peryt@intel.com>
* g++.dg/other/i386-2.C: Add new options.
* g++.dg/other/i386-3.C: Ditto.
......
/* PR target/83488 */
/* { dg-do compile } */
/* { dg-options "-mno-avx -mavx512vnni" } */
typedef int __v16si __attribute__((vector_size (64)));
void
foo (__v16si *a, __v16si *b, __v16si *c, __v16si *d)
{
*a = __builtin_ia32_vpdpbusd_v16si (*b, *c, *d);
}
/* PR target/83488 */
/* { dg-do compile } */
/* { dg-options "-mno-avx -mavx512vnni -mno-avx512vl" } */
typedef int __v8si __attribute__((vector_size (32)));
void
foo (__v8si *a, __v8si *b, __v8si *c, __v8si *d)
{
*a = __builtin_ia32_vpdpbusd_v8si (*b, *c, *d); /* { dg-error "needs isa option" } */
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment