]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/CodeGenOpenCL/local-initializer-undef.cl
Vendor import of clang release_38 branch r258549:
[FreeBSD/FreeBSD.git] / test / CodeGenOpenCL / local-initializer-undef.cl
1 // RUN: %clang_cc1 %s -O0 -ffake-address-space-map -emit-llvm -o - | FileCheck %s
2
3 typedef struct Foo {
4     int x;
5     float y;
6     float z;
7 } Foo;
8
9 // CHECK-DAG: @test.lds_int = internal addrspace(2) global i32 undef
10 // CHECK-DAG: @test.lds_int_arr = internal addrspace(2) global [128 x i32] undef
11 // CHECK-DAG: @test.lds_struct = internal addrspace(2) global %struct.Foo undef
12 // CHECK-DAG: @test.lds_struct_arr = internal addrspace(2) global [64 x %struct.Foo] undef
13 __kernel void test()
14 {
15     __local int lds_int;
16     __local int lds_int_arr[128];
17     __local Foo lds_struct;
18     __local Foo lds_struct_arr[64];
19
20     lds_int = 1;
21     lds_int_arr[0] = 1;
22     lds_struct.x = 1;
23     lds_struct_arr[0].x = 1;
24 }