Create debug type descriptors for aggregate/enum types.
llvm-svn: 52070
diff --git a/clang/lib/CodeGen/CGDebugInfo.h b/clang/lib/CodeGen/CGDebugInfo.h
index 35d167c..129ba94 100644
--- a/clang/lib/CodeGen/CGDebugInfo.h
+++ b/clang/lib/CodeGen/CGDebugInfo.h
@@ -34,6 +34,7 @@
class SubprogramDesc;
class GlobalVariable;
class GlobalVariableDesc;
+ class EnumeratorDesc;
}
namespace clang {
@@ -69,6 +70,7 @@
std::vector<llvm::DebugInfoDesc *> RegionStack;
std::vector<llvm::VariableDesc *> VariableDescList;
std::vector<llvm::GlobalVariableDesc *> GlobalVarDescList;
+ std::vector<llvm::EnumeratorDesc *> EnumDescList;
llvm::SubprogramDesc *Subprogram;
/// Helper functions for getOrCreateType.
@@ -82,6 +84,12 @@
llvm::CompileUnitDesc *unit);
llvm::TypeDesc *getOrCreateFunctionType(QualType type,
llvm::CompileUnitDesc *unit);
+ llvm::TypeDesc *getOrCreateRecordType(QualType type,
+ llvm::CompileUnitDesc *unit);
+ llvm::TypeDesc *getOrCreateEnumType(QualType type,
+ llvm::CompileUnitDesc *unit);
+ llvm::TypeDesc *getOrCreateTaggedType(QualType type,
+ llvm::CompileUnitDesc *unit);
public:
CGDebugInfo(CodeGenModule *m);