// RUN: %clang_cc1 -std=c++14 -ast-dump -x hip %s | FileCheck -check-prefixes=CHECK,HOST %s // RUN: %clang_cc1 -std=c++14 -ast-dump -fcuda-is-device -x hip %s | FileCheck -check-prefixes=CHECK,DEV %s #include "Inputs/cuda.h" // CHECK-LABEL: VarDecl {{.*}} m1 'int' // CHECK-NEXT: CUDAConstantAttr {{.*}}cuda.h __constant__ int m1; // CHECK-LABEL: VarDecl {{.*}} m2 'int' // CHECK-NEXT: CUDAConstantAttr {{.*}}cuda.h // CHECK-NOT: CUDAConstantAttr __constant__ __constant__ int m2; // CHECK-LABEL: VarDecl {{.*}} m3 'const int' // HOST-NOT: CUDAConstantAttr // DEV-NOT: CUDAConstantAttr {{.*}}cuda.h // DEV: CUDAConstantAttr {{.*}}Implicit // DEV-NOT: CUDAConstantAttr {{.*}}cuda.h constexpr int m3 = 1; // CHECK-LABEL: VarDecl {{.*}} m3a 'const int' // CHECK-NOT: CUDAConstantAttr {{.*}}Implicit // CHECK: CUDAConstantAttr {{.*}}cuda.h // CHECK-NOT: CUDAConstantAttr {{.*}}Implicit constexpr __constant__ int m3a = 2; // CHECK-LABEL: VarDecl {{.*}} m3b 'const int' // CHECK-NOT: CUDAConstantAttr {{.*}}Implicit // CHECK: CUDAConstantAttr {{.*}}cuda.h // CHECK-NOT: CUDAConstantAttr {{.*}}Implicit __constant__ constexpr int m3b = 3;