brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.5 KiB · ef74d93 Raw
32 lines · plain
1// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -fcuda-is-device -fapply-global-visibility-to-externs -fvisibility=default -emit-llvm -o - %s | FileCheck --check-prefix=CHECK-DEFAULT %s2// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -fcuda-is-device -fapply-global-visibility-to-externs -fvisibility=protected -emit-llvm -o - %s | FileCheck --check-prefix=CHECK-PROTECTED %s3// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -fcuda-is-device -fapply-global-visibility-to-externs -fvisibility=hidden -emit-llvm -o - %s | FileCheck --check-prefix=CHECK-HIDDEN %s4 5#include "Inputs/cuda.h"6 7// CHECK-DEFAULT: @c ={{.*}} addrspace(4) externally_initialized constant8// CHECK-DEFAULT: @g ={{.*}} addrspace(1) externally_initialized global9// CHECK-PROTECTED: @c = protected addrspace(4) externally_initialized constant10// CHECK-PROTECTED: @g = protected addrspace(1) externally_initialized global11// CHECK-HIDDEN: @c = protected addrspace(4) externally_initialized constant12// CHECK-HIDDEN: @g = protected addrspace(1) externally_initialized global13__constant__ int c;14__device__ int g;15 16// CHECK-DEFAULT: @e = external addrspace(1) global17// CHECK-PROTECTED: @e = external protected addrspace(1) global18// CHECK-HIDDEN: @e = external protected addrspace(1) global19extern __device__ int e;20 21// dummy one to hold reference to `e`.22__device__ int f() {23  return e;24}25 26// CHECK-DEFAULT: define{{.*}} amdgpu_kernel void @_Z3foov()27// CHECK-PROTECTED: define protected amdgpu_kernel void @_Z3foov()28// CHECK-HIDDEN: define protected amdgpu_kernel void @_Z3foov()29__global__ void foo() {30  g = c;31}32