diff options
Diffstat (limited to 'clang/test/CodeGenOpenCL/2011-04-15-vec-init-from-vec.cl')
-rw-r--r-- | clang/test/CodeGenOpenCL/2011-04-15-vec-init-from-vec.cl | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/clang/test/CodeGenOpenCL/2011-04-15-vec-init-from-vec.cl b/clang/test/CodeGenOpenCL/2011-04-15-vec-init-from-vec.cl new file mode 100644 index 00000000000..8454b17cf59 --- /dev/null +++ b/clang/test/CodeGenOpenCL/2011-04-15-vec-init-from-vec.cl @@ -0,0 +1,12 @@ +// RUN: %clang_cc1 %s -emit-llvm -o %t + +typedef __attribute__((ext_vector_type(8))) unsigned char uchar8; +typedef __attribute__((ext_vector_type(4))) unsigned long ulong4; +typedef __attribute__((ext_vector_type(16))) unsigned char uchar16; + +// OpenCL allows vectors to be initialized by vectors Handle bug in +// VisitInitListExpr for this case below. +void foo( ulong4 v ) +{ + uchar8 val[4] = {{(uchar8){((uchar16)(v.lo)).lo}}}; +}
\ No newline at end of file |