summaryrefslogtreecommitdiffstats
path: root/test/CodeGenCXX/rtti-linkage.cpp
diff options
context:
space:
mode:
authorEric Fiselier <eric@efcs.ca>2018-05-10 08:10:57 +0000
committerEric Fiselier <eric@efcs.ca>2018-05-10 08:10:57 +0000
commit6f9852dac2443ed3a58542da114365a142079d31 (patch)
tree4e38c3b109fc87c7f37c652d8bceecbd0c63d198 /test/CodeGenCXX/rtti-linkage.cpp
parent5546e9f1ae4a5b58a15519e543c1157bbb2487c4 (diff)
Revert "[Itanium] Emit type info names with external linkage."
This reverts commit r331957. It seems to be causing failures on ppc64le-linux. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@331963 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGenCXX/rtti-linkage.cpp')
-rw-r--r--test/CodeGenCXX/rtti-linkage.cpp56
1 files changed, 22 insertions, 34 deletions
diff --git a/test/CodeGenCXX/rtti-linkage.cpp b/test/CodeGenCXX/rtti-linkage.cpp
index 38483953bb..b6b72aa04a 100644
--- a/test/CodeGenCXX/rtti-linkage.cpp
+++ b/test/CodeGenCXX/rtti-linkage.cpp
@@ -1,31 +1,29 @@
-// RUN: %clang_cc1 %s -I%S -triple=x86_64-apple-darwin10 -emit-llvm -o - | \
-// RUN: FileCheck %s -check-prefix=CHECK -check-prefix=CHECK-BOTH \
-// RUN: -DLINKONCE_VIS_CONSTANT='linkonce_odr constant'
-// RUN: %clang_cc1 %s -I%S -triple=x86_64-apple-darwin10 -fvisibility hidden -emit-llvm -o - | \
-// RUN: FileCheck %s -check-prefix=CHECK-WITH-HIDDEN -check-prefix=CHECK-BOTH \
-// RUN: -DLINKONCE_VIS_CONSTANT='linkonce_odr hidden constant'
+// RUN: %clang_cc1 %s -I%S -triple=x86_64-apple-darwin10 -emit-llvm -o - | FileCheck %s -check-prefix=CHECK -check-prefix=CHECK-BOTH
+// RUN: %clang_cc1 %s -I%S -triple=x86_64-apple-darwin10 -fvisibility hidden -emit-llvm -o - | FileCheck -check-prefix=CHECK-WITH-HIDDEN -check-prefix=CHECK-BOTH %s
#include <typeinfo>
-// CHECK-BOTH: _ZTSP1C = [[LINKONCE_VIS_CONSTANT]]
-// CHECK-BOTH: _ZTS1C = [[LINKONCE_VIS_CONSTANT]]
+// CHECK-BOTH: _ZTSP1C = internal constant
+// CHECK-BOTH: _ZTS1C = internal constant
// CHECK-BOTH: _ZTI1C = internal constant
// CHECK-BOTH: _ZTIP1C = internal constant
-// CHECK-BOTH: _ZTSPP1C = [[LINKONCE_VIS_CONSTANT]]
+// CHECK-BOTH: _ZTSPP1C = internal constant
// CHECK-BOTH: _ZTIPP1C = internal constant
-// CHECK-BOTH: _ZTSM1Ci = [[LINKONCE_VIS_CONSTANT]]
+// CHECK-BOTH: _ZTSM1Ci = internal constant
// CHECK-BOTH: _ZTIM1Ci = internal constant
-// CHECK-BOTH: _ZTSPM1Ci = [[LINKONCE_VIS_CONSTANT]]
+// CHECK-BOTH: _ZTSPM1Ci = internal constant
// CHECK-BOTH: _ZTIPM1Ci = internal constant
-// CHECK-BOTH: _ZTSM1CS_ = [[LINKONCE_VIS_CONSTANT]]
+// CHECK-BOTH: _ZTSM1CS_ = internal constant
// CHECK-BOTH: _ZTIM1CS_ = internal constant
-// CHECK-BOTH: _ZTSM1CPS_ = [[LINKONCE_VIS_CONSTANT]]
+// CHECK-BOTH: _ZTSM1CPS_ = internal constant
// CHECK-BOTH: _ZTIM1CPS_ = internal constant
-// CHECK-BOTH: _ZTSM1A1C = [[LINKONCE_VIS_CONSTANT]]
-// CHECK-BOTH: _ZTS1A = [[LINKONCE_VIS_CONSTANT]]
-// CHECK-BOTH: _ZTI1A = [[LINKONCE_VIS_CONSTANT]]
+// CHECK-BOTH: _ZTSM1A1C = internal constant
+// CHECK: _ZTS1A = linkonce_odr constant
+// CHECK-WITH-HIDDEN: _ZTS1A = linkonce_odr hidden constant
+// CHECK: _ZTI1A = linkonce_odr constant
+// CHECK-WITH-HIDDEN: _ZTI1A = linkonce_odr hidden constant
// CHECK-BOTH: _ZTIM1A1C = internal constant
-// CHECK-BOTH: _ZTSM1AP1C = [[LINKONCE_VIS_CONSTANT]]
+// CHECK-BOTH: _ZTSM1AP1C = internal constant
// CHECK-BOTH: _ZTIM1AP1C = internal constant
// CHECK-WITH-HIDDEN: _ZTSFN12_GLOBAL__N_11DEvE = internal constant
@@ -54,12 +52,6 @@
// CHECK: _ZTSFvvE = linkonce_odr constant
// CHECK: _ZTIFvvE = linkonce_odr constant
// CHECK: _ZTIPFvvE = linkonce_odr constant
-// CHECK: _ZTSPN12_GLOBAL__N_12DIE = internal constant
-// CHECK: _ZTSN12_GLOBAL__N_12DIE = internal constant
-// CHECK: _ZTIN12_GLOBAL__N_12DIE = internal constant
-// CHECK: _ZTIPN12_GLOBAL__N_12DIE = internal constant
-// CHECK: _ZTSMN12_GLOBAL__N_12DIEFvvE = internal constant
-// CHECK: _ZTIMN12_GLOBAL__N_12DIEFvvE = internal constant
// CHECK: _ZTSN12_GLOBAL__N_11EE = internal constant
// CHECK: _ZTIN12_GLOBAL__N_11EE = internal constant
// CHECK: _ZTSA10_i = linkonce_odr constant
@@ -107,13 +99,12 @@ void t1() {
}
namespace {
-// D and DI are inside an anonymous namespace, so all type information related
-// to both should have internal linkage.
-struct D {};
-struct DI;
-
-// E is also inside an anonymous namespace.
-enum E {};
+ // D is inside an anonymous namespace, so all type information related to D should have
+ // internal linkage.
+ struct D { };
+
+ // E is also inside an anonymous namespace.
+ enum E { };
};
@@ -135,10 +126,7 @@ const std::type_info &t2() {
// The exception specification is not part of the RTTI descriptor, so it should not have
// internal linkage.
(void)typeid(void (*)() throw (D));
-
- (void)typeid(DI *);
- (void)typeid(void (DI::*)());
-
+
(void)typeid(E);
return typeid(getD());