summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/Mangle.cpp
diff options
context:
space:
mode:
authorMike Stump <mrs@apple.com>2009-10-28 01:51:46 +0000
committerMike Stump <mrs@apple.com>2009-10-28 01:51:46 +0000
commit82d25e4e5e2904a11d67a6b302bf9bbc9382319a (patch)
treef4b8194b56fd52f2e66ad0c124009c07cf6178f7 /clang/lib/CodeGen/Mangle.cpp
parent4a609f3cefe5f62fbaa3c07771fa90a2d28051f8 (diff)
downloadbcm5719-llvm-82d25e4e5e2904a11d67a6b302bf9bbc9382319a.tar.gz
bcm5719-llvm-82d25e4e5e2904a11d67a6b302bf9bbc9382319a.zip
Add mangling for VTTs.
llvm-svn: 85363
Diffstat (limited to 'clang/lib/CodeGen/Mangle.cpp')
-rw-r--r--clang/lib/CodeGen/Mangle.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/Mangle.cpp b/clang/lib/CodeGen/Mangle.cpp
index 2e6034bbcd9..b0015956be2 100644
--- a/clang/lib/CodeGen/Mangle.cpp
+++ b/clang/lib/CodeGen/Mangle.cpp
@@ -52,6 +52,7 @@ namespace {
void mangleGuardVariable(const VarDecl *D);
void mangleCXXVtable(const CXXRecordDecl *RD);
+ void mangleCXXVTT(const CXXRecordDecl *RD);
void mangleCXXRtti(const CXXRecordDecl *RD);
void mangleCXXCtor(const CXXConstructorDecl *D, CXXCtorType Type);
void mangleCXXDtor(const CXXDestructorDecl *D, CXXDtorType Type);
@@ -204,6 +205,12 @@ void CXXNameMangler::mangleCXXVtable(const CXXRecordDecl *RD) {
mangleName(RD);
}
+void CXXNameMangler::mangleCXXVTT(const CXXRecordDecl *RD) {
+ // <special-name> ::= TT <type> # VTT structure
+ Out << "_ZTT";
+ mangleName(RD);
+}
+
void CXXNameMangler::mangleCXXRtti(const CXXRecordDecl *RD) {
// <special-name> ::= TI <type> # typeinfo structure
Out << "_ZTI";
OpenPOWER on IntegriCloud