From 32664c3f9b2624f0f3cea5f2b92a4fbfd5301674 Mon Sep 17 00:00:00 2001 From: Bai Yannan Date: Wed, 18 Nov 2015 16:28:35 +0800 Subject: GBE/DebugInfo: Enable new feature 1. Add a bool env OCL_DEBUGINFO to enable generate debug infomation while compiling cl source, set it false as default value. 2. Define a structure type DebugInfo. Signed-off-by: Yannan Bai Reviewed-by: Ruiling Song --- backend/src/backend/program.cpp | 2 ++ backend/src/backend/program.h | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/backend/src/backend/program.cpp b/backend/src/backend/program.cpp index adf22182..e2d3f4f3 100644 --- a/backend/src/backend/program.cpp +++ b/backend/src/backend/program.cpp @@ -529,6 +529,7 @@ namespace gbe { program->CleanLlvmResource(); } + BVAR(OCL_DEBUGINFO, false); #ifdef GBE_COMPILER_AVAILABLE static bool buildModuleFromSource(const char *source, llvm::Module** out_module, llvm::LLVMContext* llvm_ctx, std::string dumpLLVMFileName, std::vector& options, size_t stringSize, char *err, @@ -565,6 +566,7 @@ namespace gbe { #endif /* LLVM_VERSION_MINOR <= 2 */ args.push_back("stringInput.cl"); args.push_back("-ffp-contract=off"); + if(OCL_DEBUGINFO) args.push_back("-g"); // The compiler invocation needs a DiagnosticsEngine so it can report problems std::string ErrorString; diff --git a/backend/src/backend/program.h b/backend/src/backend/program.h index f948a6b3..51797ee4 100644 --- a/backend/src/backend/program.h +++ b/backend/src/backend/program.h @@ -36,6 +36,11 @@ extern "C" { #endif /* __cplusplus */ +typedef struct _DebugInfo { + uint32_t line; + uint32_t col; +} DebugInfo; + /*! Opaque structure that interfaces a GBE program */ typedef struct _gbe_program *gbe_program; -- cgit v1.2.3