aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/CGVtable.cpp
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2010-02-12 02:38:13 +0000
committerAnders Carlsson <andersca@mac.com>2010-02-12 02:38:13 +0000
commit982414266cbfbb3f2784c6b42f008532336ea64c (patch)
tree41045302b8a94f2465556282d094e10d041d49f6 /lib/CodeGen/CGVtable.cpp
parentb8358d84f41c9f80ea66bfcb9e8e997183fc5a8b (diff)
When dumping vtables, dump whether a virtual member function is pure or not.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95963 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGVtable.cpp')
-rw-r--r--lib/CodeGen/CGVtable.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/CodeGen/CGVtable.cpp b/lib/CodeGen/CGVtable.cpp
index eeee22c275..09d6067f46 100644
--- a/lib/CodeGen/CGVtable.cpp
+++ b/lib/CodeGen/CGVtable.cpp
@@ -500,7 +500,6 @@ public:
/// dumpLayout - Dump the vtable layout.
void dumpLayout(llvm::raw_ostream&);
-
};
void VtableBuilder::layoutSimpleVtable(const CXXRecordDecl *RD) {
@@ -593,6 +592,9 @@ void VtableBuilder::dumpLayout(llvm::raw_ostream& Out) {
PredefinedExpr::ComputeName(PredefinedExpr::PrettyFunctionNoVirtual,
MD);
Out << Str;
+ if (MD->isPure())
+ Out << " [pure]";
+
break;
}
@@ -600,6 +602,9 @@ void VtableBuilder::dumpLayout(llvm::raw_ostream& Out) {
const CXXDestructorDecl *DD = Component.getDestructorDecl();
Out << DD->getQualifiedNameAsString() << "() [complete]";
+ if (DD->isPure())
+ Out << " [pure]";
+
break;
}
@@ -607,6 +612,9 @@ void VtableBuilder::dumpLayout(llvm::raw_ostream& Out) {
const CXXDestructorDecl *DD = Component.getDestructorDecl();
Out << DD->getQualifiedNameAsString() << "() [deleting]";
+ if (DD->isPure())
+ Out << " [pure]";
+
break;
}