summaryrefslogtreecommitdiffstats
path: root/clang/test
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-02-01 00:52:10 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-02-01 00:52:10 +0000
commit0d349f9b8a633b47b9fb26da5c41a791876fb34b (patch)
tree72f0e4f9d04c3c6306ba726fd94d662d23eacf65 /clang/test
parentc46f94d4902288823c9b77aa7d21e7cf6b5b4c13 (diff)
downloadbcm5719-llvm-0d349f9b8a633b47b9fb26da5c41a791876fb34b.tar.gz
bcm5719-llvm-0d349f9b8a633b47b9fb26da5c41a791876fb34b.zip
When initializing struct members, the important thing is that the "initializing" expression is
compatible, not having the same type. Fix rdar://8183908 in which compatible vector types weren't initialized properly leading to a crash. llvm-svn: 124637
Diffstat (limited to 'clang/test')
-rw-r--r--clang/test/CodeGen/struct-init.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/clang/test/CodeGen/struct-init.c b/clang/test/CodeGen/struct-init.c
index 926e5a7f5dd..861c41e59cc 100644
--- a/clang/test/CodeGen/struct-init.c
+++ b/clang/test/CodeGen/struct-init.c
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 %s -emit-llvm -o -
+// RUN: %clang_cc1 %s -emit-llvm-only
typedef struct _zend_ini_entry zend_ini_entry;
struct _zend_ini_entry {
@@ -18,3 +18,14 @@ struct GLGENH {
};
struct GLGENH ABHFBF = {1};
+
+typedef __attribute__(( ext_vector_type(2) )) unsigned int uint2;
+typedef __attribute__(( __vector_size__(8) )) unsigned int __neon_uint32x2_t;
+
+// rdar://8183908
+typedef struct __simd64_uint32_t {
+ __neon_uint32x2_t val;
+} uint32x2_t;
+void foo() {
+ const uint32x2_t signBit = { (uint2) 0x80000000 };
+}
OpenPOWER on IntegriCloud