summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2009-09-18 19:18:19 +0000
committerAnders Carlsson <andersca@mac.com>2009-09-18 19:18:19 +0000
commit327c8df90c2c341f52818d2f13aaf5ac1ac6f76b (patch)
treed1b2c4ff8db34df2130549f97c3bc6b023be4e2c
parentf9c95be2f64f5ce9a58f7451275604e41179069d (diff)
downloadbcm5719-llvm-327c8df90c2c341f52818d2f13aaf5ac1ac6f76b.tar.gz
bcm5719-llvm-327c8df90c2c341f52818d2f13aaf5ac1ac6f76b.zip
Make our char vector types not be explicitly signed to match GCC and to fix compilation with C++ and -fno-lax-vector-conversions
llvm-svn: 82254
-rw-r--r--clang/lib/Headers/emmintrin.h2
-rw-r--r--clang/lib/Headers/mmintrin.h2
-rw-r--r--clang/test/Sema/x86-intrinsics-headers.c9
3 files changed, 11 insertions, 2 deletions
diff --git a/clang/lib/Headers/emmintrin.h b/clang/lib/Headers/emmintrin.h
index b83ed5fe027..fec01549edc 100644
--- a/clang/lib/Headers/emmintrin.h
+++ b/clang/lib/Headers/emmintrin.h
@@ -35,7 +35,7 @@ typedef long long __m128i __attribute__((__vector_size__(16)));
typedef int __v4si __attribute__((__vector_size__(16)));
typedef short __v8hi __attribute__((__vector_size__(16)));
-typedef signed char __v16qi __attribute__((__vector_size__(16)));
+typedef char __v16qi __attribute__((__vector_size__(16)));
static inline __m128d __attribute__((__always_inline__, __nodebug__))
_mm_add_sd(__m128d a, __m128d b)
diff --git a/clang/lib/Headers/mmintrin.h b/clang/lib/Headers/mmintrin.h
index e3cbe48ce06..0f06f787b6a 100644
--- a/clang/lib/Headers/mmintrin.h
+++ b/clang/lib/Headers/mmintrin.h
@@ -32,7 +32,7 @@ typedef long long __m64 __attribute__((__vector_size__(8)));
typedef int __v2si __attribute__((__vector_size__(8)));
typedef short __v4hi __attribute__((__vector_size__(8)));
-typedef signed char __v8qi __attribute__((__vector_size__(8)));
+typedef char __v8qi __attribute__((__vector_size__(8)));
static inline void __attribute__((__always_inline__, __nodebug__))
_mm_empty(void)
diff --git a/clang/test/Sema/x86-intrinsics-headers.c b/clang/test/Sema/x86-intrinsics-headers.c
new file mode 100644
index 00000000000..be176966612
--- /dev/null
+++ b/clang/test/Sema/x86-intrinsics-headers.c
@@ -0,0 +1,9 @@
+// RUN: clang-cc -triple x86_64-apple-darwin10 -fsyntax-only --mcpu=core2 %s &&
+// RUN: clang-cc -triple x86_64-apple-darwin10 -fsyntax-only --mcpu=core2 -fno-lax-vector-conversions %s &&
+// RUN: clang-cc -triple x86_64-apple-darwin10 -fsyntax-only --mcpu=core2 -x c++ %s
+
+#include <emmintrin.h>
+#include <mm_malloc.h>
+#include <pmmintrin.h>
+#include <tmmintrin.h>
+#include <xmmintrin.h>
OpenPOWER on IntegriCloud