1*0a6a1f1dSLionel Sambuc// RUN: %clang_cc1 %s -O0 -ffake-address-space-map -emit-llvm -o - | FileCheck %s 2*0a6a1f1dSLionel Sambuc 3*0a6a1f1dSLionel Sambuctypedef struct Foo { 4*0a6a1f1dSLionel Sambuc int x; 5*0a6a1f1dSLionel Sambuc float y; 6*0a6a1f1dSLionel Sambuc float z; 7*0a6a1f1dSLionel Sambuc} Foo; 8*0a6a1f1dSLionel Sambuc 9*0a6a1f1dSLionel Sambuc// CHECK-DAG: @test.lds_int = internal addrspace(2) global i32 undef 10*0a6a1f1dSLionel Sambuc// CHECK-DAG: @test.lds_int_arr = internal addrspace(2) global [128 x i32] undef 11*0a6a1f1dSLionel Sambuc// CHECK-DAG: @test.lds_struct = internal addrspace(2) global %struct.Foo undef 12*0a6a1f1dSLionel Sambuc// CHECK-DAG: @test.lds_struct_arr = internal addrspace(2) global [64 x %struct.Foo] undef 13*0a6a1f1dSLionel Sambuc__kernel void test() 14*0a6a1f1dSLionel Sambuc{ 15*0a6a1f1dSLionel Sambuc __local int lds_int; 16*0a6a1f1dSLionel Sambuc __local int lds_int_arr[128]; 17*0a6a1f1dSLionel Sambuc __local Foo lds_struct; 18*0a6a1f1dSLionel Sambuc __local Foo lds_struct_arr[64]; 19*0a6a1f1dSLionel Sambuc 20*0a6a1f1dSLionel Sambuc lds_int = 1; 21*0a6a1f1dSLionel Sambuc lds_int_arr[0] = 1; 22*0a6a1f1dSLionel Sambuc lds_struct.x = 1; 23*0a6a1f1dSLionel Sambuc lds_struct_arr[0].x = 1; 24*0a6a1f1dSLionel Sambuc} 25