DebugInfo: CollectRecordStaticField -> CreateRecordStaticField to return its result.

llvm-svn: 188501
This commit is contained in:
David Blaikie 2013-08-15 22:50:29 +00:00
parent 952dac3b7f
commit ae01946afa
2 changed files with 9 additions and 11 deletions

View File

@ -866,10 +866,9 @@ CollectRecordLambdaFields(const CXXRecordDecl *CXXDecl,
}
/// CollectRecordStaticField - Helper for CollectRecordFields.
void CGDebugInfo::
CollectRecordStaticField(const VarDecl *Var,
SmallVectorImpl<llvm::Value *> &elements,
llvm::DIType RecordTy) {
llvm::DIDerivedType
CGDebugInfo::CreateRecordStaticField(const VarDecl *Var,
llvm::DIType RecordTy) {
// Create the descriptor for the static variable, with or without
// constant initializers.
llvm::DIFile VUnit = getOrCreateFile(Var->getLocation());
@ -898,10 +897,10 @@ CollectRecordStaticField(const VarDecl *Var,
else if (Access == clang::AS_protected)
Flags |= llvm::DIDescriptor::FlagProtected;
llvm::DIType GV = DBuilder.createStaticMemberType(RecordTy, VName, VUnit,
LineNumber, VTy, Flags, C);
elements.push_back(GV);
llvm::DIDerivedType GV = DBuilder.createStaticMemberType(
RecordTy, VName, VUnit, LineNumber, VTy, Flags, C);
StaticDataMemberCache[Var->getCanonicalDecl()] = llvm::WeakVH(GV);
return GV;
}
/// CollectRecordNormalField - Helper for CollectRecordFields.
@ -952,7 +951,7 @@ CollectRecordFields(const RecordDecl *record, llvm::DIFile tunit,
for (RecordDecl::decl_iterator I = record->decls_begin(),
E = record->decls_end(); I != E; ++I)
if (const VarDecl *V = dyn_cast<VarDecl>(*I))
CollectRecordStaticField(V, elements, RecordTy);
elements.push_back(CreateRecordStaticField(V, RecordTy));
else if (FieldDecl *field = dyn_cast<FieldDecl>(*I)) {
CollectRecordNormalField(field, layout.getFieldOffset(fieldNo),
tunit, elements, RecordTy);

View File

@ -184,9 +184,8 @@ class CGDebugInfo {
void CollectRecordLambdaFields(const CXXRecordDecl *CXXDecl,
SmallVectorImpl<llvm::Value *> &E,
llvm::DIType RecordTy);
void CollectRecordStaticField(const VarDecl *Var,
SmallVectorImpl<llvm::Value *> &E,
llvm::DIType RecordTy);
llvm::DIDerivedType CreateRecordStaticField(const VarDecl *Var,
llvm::DIType RecordTy);
void CollectRecordNormalField(const FieldDecl *Field, uint64_t OffsetInBits,
llvm::DIFile F,
SmallVectorImpl<llvm::Value *> &E,