brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.7 KiB · b614cd9 Raw
51 lines · plain
1// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -fcuda-is-device \2// RUN:   -emit-llvm -o - -x hip %s | FileCheck -check-prefix=DEV %s3 4// RUN: %clang_cc1 -triple x86_64-gnu-linux -std=c++11 \5// RUN:   -emit-llvm -o - -x hip %s | FileCheck -check-prefix=HOST %s6 7// Negative tests.8 9// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -fcuda-is-device \10// RUN:   -emit-llvm -o - -x hip %s | FileCheck -check-prefix=DEV-NEG %s11 12#include "Inputs/cuda.h"13 14template <class T>15class A {16    static int h_member;17    __device__ static int d_member;18    __constant__ static int c_member;19    __managed__ static int m_member;20    const static int const_member = 0;21};22 23template <class T>24int A<T>::h_member;25 26template <class T>27__device__ int A<T>::d_member;28 29template <class T>30__constant__ int A<T>::c_member;31 32template <class T>33__managed__ int A<T>::m_member;34 35template <class T>36const int A<T>::const_member;37 38template class A<int>;39 40//DEV-DAG: @_ZN1AIiE8d_memberE = internal addrspace(1) global i32 0, comdat, align 441//DEV-DAG: @_ZN1AIiE8c_memberE = internal addrspace(4) constant i32 0, comdat, align 442//DEV-DAG: @_ZN1AIiE8m_memberE = internal addrspace(1) externally_initialized global ptr addrspace(1) null43//DEV-DAG: @_ZN1AIiE12const_memberE = internal addrspace(4) constant i32 0, comdat, align 444//DEV-NEG-NOT: @_ZN1AIiE8h_memberE45 46//HOST-DAG: @_ZN1AIiE8h_memberE = weak_odr global i32 0, comdat, align 447//HOST-DAG: @_ZN1AIiE8d_memberE = internal global i32 undef, comdat, align 448//HOST-DAG: @_ZN1AIiE8c_memberE = internal global i32 undef, comdat, align 449//HOST-DAG: @_ZN1AIiE8m_memberE = internal externally_initialized global ptr null50//HOST-DAG: @_ZN1AIiE12const_memberE = weak_odr constant i32 0, comdat, align 451