diff options
author | Sanjiv Gupta <sanjiv.gupta@microchip.com> | 2008-05-08 08:54:20 +0000 |
---|---|---|
committer | Sanjiv Gupta <sanjiv.gupta@microchip.com> | 2008-05-08 08:54:20 +0000 |
commit | 15cb669039cf26cf018460c8a18901f023bcc7dd (patch) | |
tree | 983415416e056a3e9da736291994758db590d55f /clang/lib/CodeGen/ModuleBuilder.cpp | |
parent | cd13ef01a21e83d7ee0660bf4994c2c453368d05 (diff) | |
download | bcm5719-llvm-15cb669039cf26cf018460c8a18901f023bcc7dd.tar.gz bcm5719-llvm-15cb669039cf26cf018460c8a18901f023bcc7dd.zip |
Added -g command line options to clang for generating source level debug information. This patch currently enables generation of line number debug information (stoppoints) and region begin/end debug information. The new files CGDebugInfo.h and CGDebugInfo.cpp implements the debug info manager class CGDebugInfo.
llvm-svn: 50848
Diffstat (limited to 'clang/lib/CodeGen/ModuleBuilder.cpp')
-rw-r--r-- | clang/lib/CodeGen/ModuleBuilder.cpp | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/clang/lib/CodeGen/ModuleBuilder.cpp b/clang/lib/CodeGen/ModuleBuilder.cpp index 53ee2e45517..6387c622791 100644 --- a/clang/lib/CodeGen/ModuleBuilder.cpp +++ b/clang/lib/CodeGen/ModuleBuilder.cpp @@ -34,13 +34,15 @@ namespace { const llvm::TargetData *TD; ASTContext *Ctx; const LangOptions &Features; + bool GenerateDebugInfo; protected: llvm::Module *&M; CodeGen::CodeGenModule *Builder; public: CodeGenerator(Diagnostic &diags, const LangOptions &LO, - llvm::Module *&DestModule) - : Diags(diags), Features(LO), M(DestModule) {} + llvm::Module *&DestModule, bool DebugInfoFlag) + : Diags(diags), Features(LO), GenerateDebugInfo(DebugInfoFlag), + M(DestModule) {} ~CodeGenerator() { delete Builder; @@ -52,7 +54,8 @@ namespace { M->setTargetTriple(Ctx->Target.getTargetTriple()); M->setDataLayout(Ctx->Target.getTargetDescription()); TD = new llvm::TargetData(Ctx->Target.getTargetDescription()); - Builder = new CodeGen::CodeGenModule(Context, Features, *M, *TD, Diags); + Builder = new CodeGen::CodeGenModule(Context, Features, *M, *TD, Diags, + GenerateDebugInfo); } virtual void HandleTopLevelDecl(Decl *D) { @@ -103,7 +106,8 @@ namespace { ASTConsumer *clang::CreateLLVMCodeGen(Diagnostic &Diags, const LangOptions &Features, - llvm::Module *&DestModule) { - return new CodeGenerator(Diags, Features, DestModule); + llvm::Module *&DestModule, + bool GenerateDebugInfo) { + return new CodeGenerator(Diags, Features, DestModule, GenerateDebugInfo); } |