clover/llvm: Move CLOVER_DEBUG stuff into anonymous namespace.

[ Francisco Jerez: As we're at it make debug_options[] local to its
  only user and remove temporary. ]

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
This commit is contained in:
EdB 2014-12-14 11:31:21 +01:00 committed by Francisco Jerez
parent 349df23eb0
commit 13d23a9a17
1 changed files with 20 additions and 13 deletions

View File

@ -672,19 +672,27 @@ namespace {
targets_initialized = true;
}
}
} // End anonymous namespace
#define DBG_CLC (1 << 0)
#define DBG_LLVM (1 << 1)
#define DBG_ASM (1 << 2)
static const struct debug_named_value debug_options[] = {
{"clc", DBG_CLC, "Dump the OpenCL C code for all kernels."},
{"llvm", DBG_LLVM, "Dump the generated LLVM IR for all kernels."},
{"asm", DBG_ASM, "Dump kernel assembly code for targets specifying "
"PIPE_SHADER_IR_NATIVE"},
DEBUG_NAMED_VALUE_END // must be last
};
unsigned
get_debug_flags() {
static const struct debug_named_value debug_options[] = {
{"clc", DBG_CLC, "Dump the OpenCL C code for all kernels."},
{"llvm", DBG_LLVM, "Dump the generated LLVM IR for all kernels."},
{"asm", DBG_ASM, "Dump kernel assembly code for targets specifying "
"PIPE_SHADER_IR_NATIVE"},
DEBUG_NAMED_VALUE_END // must be last
};
static const unsigned debug_flags =
debug_get_flags_option("CLOVER_DEBUG", debug_options, 0);
return debug_flags;
}
} // End anonymous namespace
module
clover::compile_program_llvm(const compat::string &source,
@ -695,8 +703,6 @@ clover::compile_program_llvm(const compat::string &source,
compat::string &r_log) {
init_targets();
static unsigned debug_flags = debug_get_flags_option("CLOVER_DEBUG",
debug_options, 0);
std::vector<llvm::Function *> kernels;
size_t processor_str_len = std::string(target).find_first_of("-");
@ -721,10 +727,10 @@ clover::compile_program_llvm(const compat::string &source,
optimize(mod, optimization_level, kernels);
if (debug_flags & DBG_CLC)
if (get_debug_flags() & DBG_CLC)
debug_log(source, ".cl");
if (debug_flags & DBG_LLVM) {
if (get_debug_flags() & DBG_LLVM) {
std::string log;
llvm::raw_string_ostream s_log(log);
mod->print(s_log, NULL);
@ -745,7 +751,8 @@ clover::compile_program_llvm(const compat::string &source,
break;
case PIPE_SHADER_IR_NATIVE: {
std::vector<char> code = compile_native(mod, triple, processor,
debug_flags & DBG_ASM, r_log);
get_debug_flags() & DBG_ASM,
r_log);
m = build_module_native(code, mod, kernels, address_spaces, r_log);
break;
}