1*0d16c23aSJoseph Huber // RUN: %clang_cc1 -verify -fopenmp -fopenmp-version=45 -fopenmp-targets=powerpc64le-ibm-linux-gnu -x c++ -triple x86_64-unknown-unknown -emit-llvm %s -o - | FileCheck %s --check-prefix=HOST 2*0d16c23aSJoseph Huber 3*0d16c23aSJoseph Huber // expected-no-diagnostics 4*0d16c23aSJoseph Huber class C { 5*0d16c23aSJoseph Huber public: 6*0d16c23aSJoseph Huber //. 7*0d16c23aSJoseph Huber // HOST: @[[C:.+]] = internal global %class.C zeroinitializer, align 4 8*0d16c23aSJoseph Huber // HOST: @[[X:.+]] = internal global i32 0, align 4 9*0d16c23aSJoseph Huber // HOST: @y = hidden global i32 0 10*0d16c23aSJoseph Huber // HOST: @z = global i32 0 11*0d16c23aSJoseph Huber // HOST-NOT: @.omp_offloading.entry.c 12*0d16c23aSJoseph Huber // HOST-NOT: @.omp_offloading.entry.x 13*0d16c23aSJoseph Huber // HOST-NOT: @.omp_offloading.entry.y 14*0d16c23aSJoseph Huber // HOST: @.omp_offloading.entry.z C()15*0d16c23aSJoseph Huber C() : x(0) {} 16*0d16c23aSJoseph Huber 17*0d16c23aSJoseph Huber int x; 18*0d16c23aSJoseph Huber }; 19*0d16c23aSJoseph Huber 20*0d16c23aSJoseph Huber static C c; 21*0d16c23aSJoseph Huber #pragma omp declare target(c) 22*0d16c23aSJoseph Huber 23*0d16c23aSJoseph Huber static int x; 24*0d16c23aSJoseph Huber #pragma omp declare target(x) 25*0d16c23aSJoseph Huber 26*0d16c23aSJoseph Huber int __attribute__((visibility("hidden"))) y; 27*0d16c23aSJoseph Huber #pragma omp declare target(y) 28*0d16c23aSJoseph Huber 29*0d16c23aSJoseph Huber int z; 30*0d16c23aSJoseph Huber #pragma omp declare target(z) 31