1 // RUN: %clang_cc1 %s -ast-dump | FileCheck %s 2 3 // Verify that the language address space attribute is 4 // understood correctly by clang. 5 6 void langas() { 7 // CHECK: VarDecl {{.*}} x_global '__global int *' 8 __attribute__((opencl_global)) int *x_global; 9 10 // CHECK: VarDecl {{.*}} z_global '__global int *' 11 [[clang::opencl_global]] int *z_global; 12 13 // CHECK: VarDecl {{.*}} x_local '__local int *' 14 __attribute__((opencl_local)) int *x_local; 15 16 // CHECK: VarDecl {{.*}} z_local '__local int *' 17 [[clang::opencl_local]] int *z_local; 18 19 // CHECK: VarDecl {{.*}} x_constant '__constant int *' 20 __attribute__((opencl_constant)) int *x_constant; 21 22 // CHECK: VarDecl {{.*}} z_constant '__constant int *' 23 [[clang::opencl_constant]] int *z_constant; 24 25 // CHECK: VarDecl {{.*}} x_private '__private int *' 26 __attribute__((opencl_private)) int *x_private; 27 28 // CHECK: VarDecl {{.*}} z_private '__private int *' 29 [[clang::opencl_private]] int *z_private; 30 31 // CHECK: VarDecl {{.*}} x_generic '__generic int *' 32 __attribute__((opencl_generic)) int *x_generic; 33 34 // CHECK: VarDecl {{.*}} z_generic '__generic int *' 35 [[clang::opencl_generic]] int *z_generic; 36 } 37