Add extra element to composite type. This new element will be used to record c++ class that holds current class's vtable.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94586 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Devang Patel
2010-01-26 21:14:59 +00:00
parent cee63322ea
commit 0fd7f9d7ff
2 changed files with 10 additions and 4 deletions

View File

@ -794,7 +794,8 @@ DICompositeType DIFactory::CreateCompositeType(unsigned Tag,
unsigned Flags,
DIType DerivedFrom,
DIArray Elements,
unsigned RuntimeLang) {
unsigned RuntimeLang,
MDNode *ContainingType) {
Value *Elts[] = {
GetTagConstant(Tag),
@ -808,9 +809,10 @@ DICompositeType DIFactory::CreateCompositeType(unsigned Tag,
ConstantInt::get(Type::getInt32Ty(VMContext), Flags),
DerivedFrom.getNode(),
Elements.getNode(),
ConstantInt::get(Type::getInt32Ty(VMContext), RuntimeLang)
ConstantInt::get(Type::getInt32Ty(VMContext), RuntimeLang),
ContainingType
};
return DICompositeType(MDNode::get(VMContext, &Elts[0], 12));
return DICompositeType(MDNode::get(VMContext, &Elts[0], 13));
}