summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGVtable.h
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2009-11-30 23:41:22 +0000
committerAnders Carlsson <andersca@mac.com>2009-11-30 23:41:22 +0000
commitb1d3f7c909843b71a950a66debab300c155636d3 (patch)
treef220608d2460efc97bf3dcb519b8a81fc507424b /clang/lib/CodeGen/CGVtable.h
parent3ee8bc9b358dbcdd43cf37a50c032deaadbce922 (diff)
downloadbcm5719-llvm-b1d3f7c909843b71a950a66debab300c155636d3.tar.gz
bcm5719-llvm-b1d3f7c909843b71a950a66debab300c155636d3.zip
Have ASTRecordLayout keep track of the key function, in preparation of fixing a synthetic ctor/dtor bug.
llvm-svn: 90168
Diffstat (limited to 'clang/lib/CodeGen/CGVtable.h')
-rw-r--r--clang/lib/CodeGen/CGVtable.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/clang/lib/CodeGen/CGVtable.h b/clang/lib/CodeGen/CGVtable.h
index ac3cdee63be..5c2b74c9dd8 100644
--- a/clang/lib/CodeGen/CGVtable.h
+++ b/clang/lib/CodeGen/CGVtable.h
@@ -91,6 +91,11 @@ class CGVtableInfo {
void ComputeMethodVtableIndices(const CXXRecordDecl *RD);
+ /// GenerateClassData - Generate all the class data requires to be generated
+ /// upon definition of a KeyFunction. This includes the vtable, the
+ /// rtti data structure and the VTT.
+ void GenerateClassData(const CXXRecordDecl *RD);
+
public:
CGVtableInfo(CodeGenModule &CGM)
: CGM(CGM) { }
@@ -111,10 +116,9 @@ public:
llvm::Constant *getVtable(const CXXRecordDecl *RD);
llvm::Constant *getCtorVtable(const CXXRecordDecl *RD,
const CXXRecordDecl *Class, uint64_t Offset);
- /// GenerateClassData - Generate all the class data requires to be generated
- /// upon definition of a KeyFunction. This includes the vtable, the
- /// rtti data structure and the VTT.
- void GenerateClassData(const CXXRecordDecl *RD);
+
+
+ void MaybeEmitVtable(GlobalDecl GD);
};
}
OpenPOWER on IntegriCloud