[clang] Implement lifetime analysis for lifetime_capture_by(X) (#115921)
[llvm-project.git] / clang / test / Parser / opencl-astype.cl
blob4a26fb635ddfd19a50511abf3105be89c495db51
1 // RUN: %clang_cc1 -fsyntax-only -verify %s -triple spir-unknown-unknown
2 #pragma OPENCL EXTENSION cl_khr_fp64 : enable
4 void test_astype() {
5 float f = 1.0f;
6 unsigned int i = __builtin_astype(f, unsigned int);
8 typedef __attribute__(( ext_vector_type(4) )) int int4;
9 typedef __attribute__(( ext_vector_type(3) )) float float3;
10 typedef __attribute__(( ext_vector_type(4) )) float float4;
11 typedef __attribute__(( ext_vector_type(4) )) double double4;
13 float4 f4;
14 double4 d4 = __builtin_astype(f4, double4); // expected-error{{invalid reinterpretation: sizes of 'double4' (vector of 4 'double' values) and '__private float4' (vector of 4 'float' values) must match}}
16 // Verify int4->float3, float3->int4 works.
17 int4 i4;
18 float3 f3 = __builtin_astype(i4, float3);
19 i4 = __builtin_astype(f3, int4);