aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorH.J. Lu <hongjiu.lu@intel.com>2008-11-21 14:05:02 +0000
committerH.J. Lu <hjl@gcc.gnu.org>2008-11-21 06:05:02 -0800
commit04a412f9d4851d15fb904ed1052423ae54795413 (patch)
tree2c783d9217e37a825aa83af077f9a28f4e7fa5b3 /gcc
parentda9014c049a6aefc3067728d11e852f73f33dfb3 (diff)
downloadgcc-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/ChangeLog12
-rw-r--r--gcc/config.gcc4
-rw-r--r--gcc/config/i386/avxintrin.h (renamed from gcc/config/i386/gmmintrin.h)17
-rw-r--r--gcc/testsuite/ChangeLog9
-rw-r--r--gcc/testsuite/g++.dg/other/i386-5.C2
-rw-r--r--gcc/testsuite/g++.dg/other/i386-6.C2
-rw-r--r--gcc/testsuite/gcc.target/i386/avx-1.c4
-rw-r--r--gcc/testsuite/gcc.target/i386/avx-2.c4
-rw-r--r--gcc/testsuite/gcc.target/i386/m256-check.h2
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