Home | History | Annotate | Download | only in CodeGenCXX

Lines Matching refs:HIDDEN

2 // RUN: %clang_cc1 %s -std=c++11 -triple=x86_64-apple-darwin10 -fvisibility hidden -emit-llvm -o - | FileCheck %s -check-prefix=CHECK-HIDDEN
4 #define HIDDEN __attribute__((visibility("hidden")))
9 // When H is hidden, it should make X hidden, even if the template argument
19 // CHECK-HIDDEN: _ZN6test301bE = hidden global
34 // CHECK-HIDDEN: @_ZN6test251aE = hidden global
42 // CHECK-HIDDEN: @_ZN6test285myvecE = hidden global
46 #pragma GCC visibility push(hidden)
54 // CHECK-HIDDEN: @_ZN6test299data_rectE = global
66 // CHECK-HIDDEN: _ZN6test403fooIiE3barE = weak_odr global
70 // Unlike gcc we propagate the information that foo not only is hidden, but
71 // has been explicitly marked as so. This lets us produce a hidden undefined
73 struct HIDDEN foo {};
78 // CHECK: @_ZN6test413barE = external hidden global
79 // CHECK-HIDDEN: @_ZN6test413barE = external hidden global
86 struct HIDDEN foo {
97 // CHECK: _ZN6test481yE = hidden global
98 // CHECK-HIDDEN: _ZN6test481yE = hidden global
101 // CHECK: @_ZN5Test425VariableInHiddenNamespaceE = hidden global i32 10
102 // CHECK: @_ZN5Test71aE = hidden global
105 // CHECK-HIDDEN: @test9_var = global
106 // CHECK: @_ZN6Test121A6hiddenE = external hidden global
108 // CHECK-HIDDEN: @_ZN6Test121A6hiddenE = external hidden global
109 // CHECK-HIDDEN: @_ZN6Test121A7visibleE = external global
110 // CHECK: @_ZN6Test131B1aE = hidden global
112 // CHECK-HIDDEN: @_ZN6Test131B1aE = hidden global
113 // CHECK-HIDDEN: @_ZN6Test131C1aE = global
115 // CHECK-HIDDEN: @_ZN6Test143varE = external global
117 // CHECK-HIDDEN: @_ZN6Test154TempINS_1AEE5Inner6bufferE = external global [0 x i8]
135 // CHECK-HIDDEN: _ZTVN6test271CIiE1DE = unnamed_addr constant
140 // CHECK-HIDDEN: @_ZZN6Test193fooIiEEvvE1a = linkonce_odr hidden global
141 // CHECK-HIDDEN: @_ZGVZN6Test193fooIiEEvvE1a = linkonce_odr hidden global i64
142 // CHECK-HIDDEN: @_ZTVN6Test161AIcEE = external unnamed_addr constant
143 // CHECK-HIDDEN: @_ZTTN6Test161AIcEE = external unnamed_addr constant
144 // CHECK: @_ZTVN5Test63fooE = linkonce_odr hidden unnamed_addr constant
147 // CHECK: define hidden void @_ZN5Test11fEv
148 void HIDDEN f() { }
153 struct HIDDEN A {
157 // A::f is a member function of a hidden class.
158 // CHECK: define hidden void @_ZN5Test21A1fEv
163 struct HIDDEN A {
169 // B is a nested class where its parent class is hidden.
170 // CHECK: define hidden void @_ZN5Test31A1B1fEv
174 namespace Test4 HIDDEN {
177 // Test4::g is in a hidden namespace.
178 // CHECK: define hidden void @_ZN5Test41gEv
192 namespace NS HIDDEN {
193 // f is in NS which is hidden.
194 // CHECK: define hidden void @_ZN5Test52NS1fEv()
199 // g is in NS, but this NS decl is not hidden.
207 struct HIDDEN foo {
224 class HIDDEN A {};
234 // CHECK: define linkonce_odr hidden void @_ZN5Test74ArefILZNS_1aEEE3fooEv()
243 // CHECK-HIDDEN: define hidden void @_ZN5Test83barEv()
244 // CHECK-HIDDEN: declare void @_ZN5Test83fooEv()
260 // CHECK-HIDDEN: define void @test9_fun(
277 // CHECK-HIDDEN: define void @_ZN6Test101B3fooEPNS_1AE(
296 // CHECK-HIDDEN: define linkonce_odr hidden void @_ZN6Test111A3fooEv(
297 // CHECK-HIDDEN: define linkonce_odr void @_ZN6Test111A3barEv(
303 // This is hidden in all cases: the explicit attribute takes
305 static int hidden HIDDEN;
312 A::hidden = 0;
319 struct HIDDEN A {};
321 // Should be hidden in all cases.
336 // Neither the visibility of the type nor -fvisibility=hidden should
372 struct HIDDEN A {
375 static void HIDDEN baz();
380 static void HIDDEN baz();
392 // CHECK: declare hidden void @_ZN6Test171A3fooEv()
394 // CHECK: declare hidden void @_ZN6Test171A3bazEv()
397 // CHECK: declare hidden void @_ZN6Test171A1B3bazEv()
398 // CHECK-HIDDEN: declare hidden void @_ZN6Test171A3fooEv()
399 // CHECK-HIDDEN: declare void @_ZN6Test171A3barEv()
400 // CHECK-HIDDEN: declare hidden void @_ZN6Test171A3bazEv()
401 // CHECK-HIDDEN: declare void @_ZN6Test171A1B3fooEv()
402 // CHECK-HIDDEN: declare void @_ZN6Test171A1B3barEv()
403 // CHECK-HIDDEN: declare hidden void @_ZN6Test171A1B3bazEv()
407 template <class T> struct HIDDEN A {
410 static void HIDDEN baz();
415 static void HIDDEN baz();
418 struct HIDDEN H;
434 // CHECK: declare hidden void @_ZN6Test181AIiE3fooEv()
436 // CHECK: declare hidden void @_ZN6Test181AIiE3bazEv()
439 // CHECK: declare hidden void @_ZN6Test181AIiE1B3bazEv()
440 // CHECK: declare hidden void @_ZN6Test181AINS_1HEE3fooEv()
441 // CHECK: declare hidden void @_ZN6Test181AINS_1HEE3barEv()
442 // CHECK: declare hidden void @_ZN6Test181AINS_1HEE3bazEv()
443 // CHECK: declare hidden void @_ZN6Test181AINS_1HEE1B3fooEv()
444 // CHECK: declare hidden void @_ZN6Test181AINS_1HEE1B3barEv()
445 // CHECK: declare hidden void @_ZN6Test181AINS_1HEE1B3bazEv()
446 // CHECK-HIDDEN: declare hidden void @_ZN6Test181AIiE3fooEv()
447 // CHECK-HIDDEN: declare void @_ZN6Test181AIiE3barEv()
448 // CHECK-HIDDEN: declare hidden void @_ZN6Test181AIiE3bazEv()
449 // CHECK-HIDDEN: declare void @_ZN6Test181AIiE1B3fooEv()
450 // CHECK-HIDDEN: declare void @_ZN6Test181AIiE1B3barEv()
451 // CHECK-HIDDEN: declare hidden void @_ZN6Test181AIiE1B3bazEv()
452 // CHECK-HIDDEN: declare hidden void @_ZN6Test181AINS_1HEE3fooEv()
453 // CHECK-HIDDEN: declare hidden void @_ZN6Test181AINS_1HEE3barEv()
454 // CHECK-HIDDEN: declare hidden void @_ZN6Test181AINS_1HEE3bazEv()
455 // CHECK-HIDDEN: declare hidden void @_ZN6Test181AINS_1HEE1B3fooEv()
456 // CHECK-HIDDEN: declare hidden void @_ZN6Test181AINS_1HEE1B3barEv()
457 // CHECK-HIDDEN: declare hidden void @_ZN6Test181AINS_1HEE1B3bazEv()
475 template <unsigned> struct HIDDEN A {};
484 // CHECK: define hidden void @_ZN6Test201AILj0EE5test0Ev()
487 // CHECK: declare hidden void @_ZN6Test201AILj0EE5test1Ev()
514 // CHECK: define linkonce_odr hidden void @_ZN6Test201BINS_1AILj2EEEE5test4Ev()
519 // CHECK: declare hidden void @_ZN6Test201BINS_1AILj2EEEE5test5Ev()
562 // CHECK-HIDDEN: declare void @_ZN6test221BINS_2A1EE3fooEv()
563 // CHECK-HIDDEN: define linkonce_odr void @_ZN6test221BINS_2A1EE3barEv()
564 // CHECK-HIDDEN: declare void @_ZN6test221BINS_2A2EE3fooEv()
565 // CHECK-HIDDEN: define linkonce_odr hidden void @_ZN6test221BINS_2A2EE3barEv()
577 // CHECK-HIDDEN: define weak_odr void @_ZN7PR101133foo3barIcE3zedEv
583 // CHECK-HIDDEN: define weak_odr hidden void @_ZN7PR101133foo3barINS_3zedEE3zedEv
593 // CHECK-HIDDEN: define weak_odr void @_ZNK7PR116905ClassIcE4sizeEv
598 // CHECK-HIDDEN: define weak_odr void @_ZN7PR116906MethodIcEEvv
614 // CHECK-HIDDEN: define weak_odr hidden void @_ZN9PR11690_23foo3zedINS_3bazENS0_3barEE3barEv
633 // CHECK-HIDDEN: define linkonce_odr hidden void @_ZN6test231XINS_1AEE1fEv
647 // CHECK-HIDDEN: define linkonce_odr hidden void @_ZN7PR120014BindINS_7VersionEEEvRKT_
663 // CHECK-HIDDEN: define linkonce_odr hidden void @_ZN6test241S3memINS_1AEEEvv
676 // CHECK-HIDDEN: define void @_ZN6test261CIiE1fEv
681 struct HIDDEN B {
689 // CHECK-HIDDEN: declare void @_ZN6test311A1B3bazEv()
693 struct HIDDEN A {
701 // CHECK-HIDDEN: define void @_ZN6test321A1B3bazEv
709 struct HIDDEN zed {
713 // CHECK-HIDDEN: define weak_odr void @_ZN6test333fooINS_3zedEE3barEv
723 // CHECK-HIDDEN: define weak_odr void @_ZN6test343barINS_3fooEEEvv
741 // CHECK-HIDDEN: define weak_odr hidden void @_ZN6test353fooINS_3zedEE3barEv
750 struct HIDDEN S2 {};
752 // CHECK: define weak_odr hidden void @_ZN6test363fooINS_2S1ENS_2S2EE3barEv
753 // CHECK-HIDDEN: define weak_odr hidden void @_ZN6test363fooINS_2S1ENS_2S2EE3barEv
757 struct HIDDEN foo {
763 // CHECK-HIDDEN: define weak_odr void @_ZN6test373barINS_3fooEEEvv
771 struct HIDDEN zed {
774 // CHECK: define weak_odr hidden void @_ZN6test383fooINS_3zedEE3barEv
775 // CHECK-HIDDEN: define weak_odr hidden void @_ZN6test383fooINS_3zedEE3barEv
780 class HIDDEN hidden_t;
783 HIDDEN void hidden() {}
793 // CHECK: define weak_odr hidden void @_ZN6test391AINS_8hidden_tEE1BIS1_E6hiddenEv
798 // CHECK: define weak_odr hidden void @_ZN6test391AINS_8hidden_tEE1BIS1_E4tempIS1_EEvv
800 // CHECK-HIDDEN: define weak_odr hidden void @_ZN6test391AINS_8hidden_tEE1BIS1_E6hiddenEv
801 // CHECK-HIDDEN: define weak_odr void @_ZN6test391AINS_8hidden_tEE1BIS1_E6noattrEv
802 // CHECK-HIDDEN: define weak_odr void @_ZN6test391AINS_8hidden_tEE1BIS1_E4tempINS_9default_tEEEvv
805 // CHECK-HIDDEN: define weak_odr hidden void @_ZN6test391AINS_8hidden_tEE1BIS1_E4tempIS1_EEvv
809 struct HIDDEN foo {
815 struct HIDDEN bar<foo> {
821 // CHECK-HIDDEN: define void @_ZN6test423barINS_3fooEE3zedEv
825 struct HIDDEN foo {
834 // CHECK-HIDDEN: define void @_ZN6test433barINS_3fooEEEvv
848 // CHECK-HIDDEN: define internal void @_ZN6test443fooINS_12_GLOBAL__N_13barEEC1Ev
865 // CHECK-HIDDEN: define internal void @_ZN6test453fooIiE3barINS_12_GLOBAL__N_13zedEEC1Ev
880 // CHECK-HIDDEN: define internal void @_ZN6test463fooINS_12_GLOBAL__N_13barEEEvv
897 // CHECK-HIDDEN: define internal void @_ZN6test473foo3barINS_12_GLOBAL__N_13zedEEEvv
905 struct HIDDEN foo {
917 // CHECK: define weak_odr hidden void @_ZN6test493bar3zedIXadL_ZNS_1xEEEEEvv
918 // CHECK-HIDDEN: define weak_odr hidden void @_ZN6test493bar3zedIXadL_ZNS_1xEEEEEvv
926 struct HIDDEN foo {
935 // CHECK: define weak_odr hidden void @_ZN6test503barIXadL_ZNS_1xEEEE3zedEv
936 // CHECK-HIDDEN: define weak_odr hidden void @_ZN6test503barIXadL_ZNS_1xEEEE3zedEv
944 struct HIDDEN foo {
951 // CHECK: define weak_odr hidden void @_ZN6test513zedIXadL_ZNS_1xEEEEEvv
952 // CHECK-HIDDEN: define weak_odr hidden void @_ZN6test513zedIXadL_ZNS_1xEEEEEvv
971 // CHECK-HIDDEN: define internal void @_ZN6test523zedILPNS_12_GLOBAL__N_13fooE0EEEvv
978 #pragma GCC visibility push(hidden)
982 // GCC fails to mark this specialization hidden, we mark it.
994 // CHECK-HIDDEN: declare void @_ZN6test536vectorIjE14_M_fill_insertEv
995 // CHECK: declare hidden void @_ZN6test536vectorIiE14_M_fill_insertEv
996 // CHECK-HIDDEN: declare hidden void @_ZN6test536vectorIiE14_M_fill_insertEv
997 // CHECK: declare hidden void @_ZN6test536vectorINS_3zedEE14_M_fill_insertEv
998 // CHECK-HIDDEN: declare hidden void @_ZN6test536vectorINS_3zedEE14_M_fill_insertEv
1006 #pragma GCC visibility push(hidden)
1014 // CHECK: declare hidden void @_ZN6test543fooINS_3zedEE3barEv
1015 // CHECK-HIDDEN: declare hidden void @_ZN6test543fooINS_3zedEE3barEv
1020 struct HIDDEN foo {
1027 // CHECK: declare hidden void @_ZN6test553fooIiE3barEv
1028 // CHECK-HIDDEN: declare hidden void @_ZN6test553fooIiE3barEv
1034 struct HIDDEN foo {
1040 // CHECK: declare hidden void @_ZN6test563fooIiE3barEv
1041 // CHECK-HIDDEN: declare hidden void @_ZN6test563fooIiE3barEv
1045 #pragma GCC visibility push(hidden)
1057 // CHECK: declare hidden void @_ZN6test573fooIiE3zedEv
1058 // CHECK-HIDDEN: declare hidden void @_ZN6test573fooIiE3zedEv
1062 #pragma GCC visibility push(hidden)
1073 // CHECK: define linkonce_odr hidden void @_ZN6test583barINS_3fooEE3zedEv
1074 // CHECK-HIDDEN: define linkonce_odr hidden void @_ZN6test583barINS_3fooEE3zedEv
1079 HIDDEN int g();
1085 // CHECK: define linkonce_odr hidden void @_ZN6test594testIXadL_ZNS_1gEvEEXadL_ZNS_1fEvEEEEvv
1086 // CHECK-HIDDEN: define linkonce_odr hidden void @_ZN6test594testIXadL_ZNS_1gEvEEXadL_ZNS_1fEvEEEEvv
1089 // CHECK: define linkonce_odr hidden void @_ZN6test594testIXadL_ZNS_1fEvEEXadL_ZNS_1gEvEEEEvv
1090 // CHECK-HIDDEN: define linkonce_odr hidden void @_ZN6test594testIXadL_ZNS_1fEvEEXadL_ZNS_1gEvEEEEvv
1096 class HIDDEN a {};
1103 // CHECK: define linkonce_odr hidden void @_ZN6test604testINS_1aENS_1bEEEvv
1104 // CHECK-HIDDEN: define linkonce_odr hidden void @_ZN6test604testINS_1aENS_1bEEEvv
1107 // CHECK: define linkonce_odr hidden void @_ZN6test604testINS_1bENS_1aEEEvv
1108 // CHECK-HIDDEN: define linkonce_odr hidden void @_ZN6test604testINS_1bENS_1aEEEvv
1131 template class HIDDEN Class1<int>;
1150 template class HIDDEN Class1<int>;
1157 enum HIDDEN E { E0 };
1170 // CHECK: define linkonce_odr hidden void @_ZN6test631A3fooILNS_1EE0EEEvv()
1171 // CHECK: define linkonce_odr hidden void @_ZN6test631A1BILNS_1EE0EE3fooEv()
1177 struct HIDDEN A {};
1183 // CHECK: define weak_odr hidden void @_ZN6test641BINS_1AEE3fooEv()
1187 class HIDDEN A {};
1206 // CHECK: define linkonce_odr hidden void @_ZN6test651BINS_1AEE6funcT1IS1_EEvv()
1215 // CHECK: define linkonce_odr hidden void @_ZN6test651BINS_1AEE6InnerTIS1_E3fooEv()
1240 // CHECK-HIDDEN: define weak_odr void @_ZN6test664barTINS_3fooEE3zedEv
1250 // CHECK-HIDDEN: define weak_odr void @_ZN6test664barIIXadL_ZNS_1IEEEE3zedEv
1261 // CHECK-HIDDEN: define weak_odr void @_ZN6test664barFIXadL_ZNS_1FEvEEE3zedEv
1278 // CHECK-HIDDEN: define weak_odr void @_ZN6test673barINS_3fooEE3zedEv