diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2008-11-21 14:05:02 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2008-11-21 06:05:02 -0800 |
commit | 04a412f9d4851d15fb904ed1052423ae54795413 (patch) | |
tree | 2c783d9217e37a825aa83af077f9a28f4e7fa5b3 /gcc | |
parent | da9014c049a6aefc3067728d11e852f73f33dfb3 (diff) | |
download | gcc-04a412f9d4851d15fb904ed1052423ae54795413.zip gcc-04a412f9d4851d15fb904ed1052423ae54795413.tar.gz gcc-04a412f9d4851d15fb904ed1052423ae54795413.tar.bz2 |
config.gcc (extra_headers): For x86 and x86-64, remove gmmintrin.h, add immintrin.h and avxintrin.h.
gcc/
2008-11-21 H.J. Lu <hongjiu.lu@intel.com>
Xuepeng Guo <xuepeng.guo@intel.com>
* config.gcc (extra_headers): For x86 and x86-64, remove
gmmintrin.h, add immintrin.h and avxintrin.h.
* config/i386/gmmintrin.h: Renamed to ...
* config/i386/avxintrin.h: This. Don't include intrinsics if
_IMMINTRIN_H_INCLUDED is undedined.
* config/i386/immintrin.h: New.
gcc/testsuite/
2008-11-21 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/avx-1.c: Include <immintrin.h> instead of
<gmmintrin.h>.
* gcc.target/i386/avx-2.c: Likewise.
* gcc.target/i386/m256-check.h: Likewise.
* g++.dg/other/i386-5.C: Likewise.
* g++.dg/other/i386-6.C: Likewise.
Co-Authored-By: Xuepeng Guo <xuepeng.guo@intel.com>
From-SVN: r142090
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 12 | ||||
-rw-r--r-- | gcc/config.gcc | 4 | ||||
-rw-r--r-- | gcc/config/i386/avxintrin.h (renamed from gcc/config/i386/gmmintrin.h) | 17 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/other/i386-5.C | 2 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/other/i386-6.C | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/avx-1.c | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/avx-2.c | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/m256-check.h | 2 |
9 files changed, 33 insertions, 23 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3967476..b73d83c9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,15 @@ +2008-11-21 H.J. Lu <hongjiu.lu@intel.com> + Xuepeng Guo <xuepeng.guo@intel.com> + + * config.gcc (extra_headers): For x86 and x86-64, remove + gmmintrin.h, add immintrin.h and avxintrin.h. + + * config/i386/gmmintrin.h: Renamed to ... + * config/i386/avxintrin.h: This. Don't include intrinsics if + _IMMINTRIN_H_INCLUDED is undedined. + + * config/i386/immintrin.h: New. + 2008-11-21 Jakub Jelinek <jakub@redhat.com> PR target/38208 diff --git a/gcc/config.gcc b/gcc/config.gcc index a78dcc0..b0e9340 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -298,7 +298,7 @@ i[34567]86-*-*) extra_headers="cpuid.h mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h pmmintrin.h tmmintrin.h ammintrin.h smmintrin.h nmmintrin.h bmmintrin.h mmintrin-common.h - wmmintrin.h gmmintrin.h cross-stdarg.h" + wmmintrin.h immintrin.h avxintrin.h cross-stdarg.h" ;; x86_64-*-*) cpu_type=i386 @@ -307,7 +307,7 @@ x86_64-*-*) extra_headers="cpuid.h mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h pmmintrin.h tmmintrin.h ammintrin.h smmintrin.h nmmintrin.h bmmintrin.h mmintrin-common.h - wmmintrin.h gmmintrin.h cross-stdarg.h" + wmmintrin.h immintrin.h avxintrin.h cross-stdarg.h" need_64bit_hwint=yes ;; ia64-*-*) diff --git a/gcc/config/i386/gmmintrin.h b/gcc/config/i386/avxintrin.h index 1c6bb18..7aea85d 100644 --- a/gcc/config/i386/gmmintrin.h +++ b/gcc/config/i386/avxintrin.h @@ -27,16 +27,9 @@ /* Implemented from the specification included in the Intel C++ Compiler User Guide and Reference, version 11.0. */ -#ifndef _GMMINTRIN_H_INCLUDED -#define _GMMINTRIN_H_INCLUDED - -#ifndef __AVX__ -# error "AVX instruction set not enabled" -#else - -/* We need definitions from the SSE4, SSSE3, SSE3, SSE2 and SSE header - files. */ -#include <smmintrin.h> +#ifndef _IMMINTRIN_H_INCLUDED +# error "Never use <avxintrin.h> directly; include <immintrin.h> instead." +#endif /* Internal data types for implementing the intrinsics. */ typedef double __v4df __attribute__ ((__vector_size__ (32))); @@ -1476,7 +1469,3 @@ _mm256_castsi128_si256 (__m128i __A) { return (__m256i) __builtin_ia32_si256_si ((__v4si)__A); } - -#endif /* __AVX__ */ - -#endif /* _GMMINTRIN_H_INCLUDED */ diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 38c36f2..3f99b5a 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,12 @@ +2008-11-21 H.J. Lu <hongjiu.lu@intel.com> + + * gcc.target/i386/avx-1.c: Include <immintrin.h> instead of + <gmmintrin.h>. + * gcc.target/i386/avx-2.c: Likewise. + * gcc.target/i386/m256-check.h: Likewise. + * g++.dg/other/i386-5.C: Likewise. + * g++.dg/other/i386-6.C: Likewise. + 2008-11-20 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/37472 diff --git a/gcc/testsuite/g++.dg/other/i386-5.C b/gcc/testsuite/g++.dg/other/i386-5.C index 2556e7e..d9b5460 100644 --- a/gcc/testsuite/g++.dg/other/i386-5.C +++ b/gcc/testsuite/g++.dg/other/i386-5.C @@ -5,5 +5,5 @@ #include <wmmintrin.h> #include <bmmintrin.h> -#include <gmmintrin.h> +#include <immintrin.h> #include <mm3dnow.h> diff --git a/gcc/testsuite/g++.dg/other/i386-6.C b/gcc/testsuite/g++.dg/other/i386-6.C index 905ac97..15f1d52 100644 --- a/gcc/testsuite/g++.dg/other/i386-6.C +++ b/gcc/testsuite/g++.dg/other/i386-6.C @@ -5,7 +5,7 @@ #include <wmmintrin.h> #include <bmmintrin.h> -#include <gmmintrin.h> +#include <immintrin.h> #include <mm3dnow.h> int dummy; diff --git a/gcc/testsuite/gcc.target/i386/avx-1.c b/gcc/testsuite/gcc.target/i386/avx-1.c index 3cda080..d093d6c 100644 --- a/gcc/testsuite/gcc.target/i386/avx-1.c +++ b/gcc/testsuite/gcc.target/i386/avx-1.c @@ -18,7 +18,7 @@ #define __builtin_ia32_extrqi(X, I, L) __builtin_ia32_extrqi(X, 1, 1) #define __builtin_ia32_insertqi(X, Y, I, L) __builtin_ia32_insertqi(X, Y, 1, 1) -/* gmmintrin.h */ +/* immintrin.h */ #define __builtin_ia32_blendpd256(X, Y, M) __builtin_ia32_blendpd256(X, Y, 1) #define __builtin_ia32_blendps256(X, Y, M) __builtin_ia32_blendps256(X, Y, 1) #define __builtin_ia32_dpps256(X, Y, M) __builtin_ia32_dpps256(X, Y, 1) @@ -135,5 +135,5 @@ #include <wmmintrin.h> #include <bmmintrin.h> -#include <gmmintrin.h> +#include <immintrin.h> #include <mm3dnow.h> diff --git a/gcc/testsuite/gcc.target/i386/avx-2.c b/gcc/testsuite/gcc.target/i386/avx-2.c index 6699558..62f6538 100644 --- a/gcc/testsuite/gcc.target/i386/avx-2.c +++ b/gcc/testsuite/gcc.target/i386/avx-2.c @@ -14,7 +14,7 @@ #include <wmmintrin.h> #include <bmmintrin.h> -#include <gmmintrin.h> +#include <immintrin.h> #include <mm3dnow.h> #define _CONCAT(x,y) x ## y @@ -53,7 +53,7 @@ test_1x (_mm_extracti_si64, __m128i, __m128i, 1, 1) test_2x (_mm_inserti_si64, __m128i, __m128i, __m128i, 1, 1) -/* gmmintrin.h */ +/* immintrin.h */ test_2 (_mm256_blend_pd, __m256d, __m256d, __m256d, 1) test_2 (_mm256_blend_ps, __m256, __m256, __m256, 1) test_2 (_mm256_dp_ps, __m256, __m256, __m256, 1) diff --git a/gcc/testsuite/gcc.target/i386/m256-check.h b/gcc/testsuite/gcc.target/i386/m256-check.h index 324af75..e184355 100644 --- a/gcc/testsuite/gcc.target/i386/m256-check.h +++ b/gcc/testsuite/gcc.target/i386/m256-check.h @@ -1,4 +1,4 @@ -#include <gmmintrin.h> +#include <immintrin.h> #include "m128-check.h" #ifndef max |