1// RUN: %clang_cc1 %s -emit-llvm -o - -O0 | FileCheck %s 2 3constant sampler_t glb_smp = 7; 4// CHECK: constant i32 7 5 6void fnc1(image1d_t img) {} 7// CHECK: @fnc1(%opencl.image1d_t* 8 9void fnc1arr(image1d_array_t img) {} 10// CHECK: @fnc1arr(%opencl.image1d_array_t* 11 12void fnc1buff(image1d_buffer_t img) {} 13// CHECK: @fnc1buff(%opencl.image1d_buffer_t* 14 15void fnc2(image2d_t img) {} 16// CHECK: @fnc2(%opencl.image2d_t* 17 18void fnc2arr(image2d_array_t img) {} 19// CHECK: @fnc2arr(%opencl.image2d_array_t* 20 21void fnc3(image3d_t img) {} 22// CHECK: @fnc3(%opencl.image3d_t* 23 24void fnc4smp(sampler_t s) {} 25// CHECK-LABEL: define void @fnc4smp(i32 26 27kernel void foo(image1d_t img) { 28 sampler_t smp = 5; 29// CHECK: alloca i32 30 event_t evt; 31// CHECK: alloca %opencl.event_t* 32// CHECK: store i32 5, 33 fnc4smp(smp); 34// CHECK: call void @fnc4smp(i32 35 fnc4smp(glb_smp); 36// CHECK: call void @fnc4smp(i32 37} 38 39void __attribute__((overloadable)) bad1(image1d_t *b, image2d_t *c, image2d_t *d) {} 40// CHECK-LABEL: @{{_Z4bad1P11ocl_image1dP11ocl_image2dS2_|"\\01\?bad1@@YAXPE?APAUocl_image1d@@PE?APAUocl_image2d@@1@Z"}} 41