xref: /llvm-project/clang/test/SemaOpenCL/init.cl (revision c6e68daac0fa6e77a89f3ca72f266a528503dd1c)
1e91b2dbdSPeter Collingbourne// RUN: %clang_cc1 %s -verify -pedantic -fsyntax-only
2*c6e68daaSAndy Gibbs// expected-no-diagnostics
3e91b2dbdSPeter Collingbourne
4e91b2dbdSPeter Collingbournetypedef float float8 __attribute((ext_vector_type(8)));
5e91b2dbdSPeter Collingbourne
6e91b2dbdSPeter Collingbournetypedef float float32_t;
7e91b2dbdSPeter Collingbournetypedef __attribute__(( __vector_size__(16) )) float32_t __neon_float32x4_t;
8e91b2dbdSPeter Collingbournetypedef struct __simd128_float32_t {
9e91b2dbdSPeter Collingbourne  __neon_float32x4_t val;
10e91b2dbdSPeter Collingbourne} float32x4_t;
11e91b2dbdSPeter Collingbourne
12e91b2dbdSPeter Collingbournefloat8 foo(float8 x) {
13e91b2dbdSPeter Collingbourne  float32x4_t lo;
14e91b2dbdSPeter Collingbourne  float32x4_t hi;
15e91b2dbdSPeter Collingbourne  return (float8) (lo.val, hi.val);
16e91b2dbdSPeter Collingbourne}
17