[Mesa-dev] [PATCH v2 1/1] clover: Dump linked binary to a different file

Jan Vesely jan.vesely at rutgers.edu
Fri Feb 24 18:29:05 UTC 2017


this allows to pass the generated files directly to llc or bugpoint

v2: add atomic counter ID

Signed-off-by: Jan Vesely <jan.vesely at rutgers.edu>
---
 src/gallium/state_trackers/clover/llvm/invocation.cpp | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/gallium/state_trackers/clover/llvm/invocation.cpp b/src/gallium/state_trackers/clover/llvm/invocation.cpp
index f63ff3d..bb9d95d 100644
--- a/src/gallium/state_trackers/clover/llvm/invocation.cpp
+++ b/src/gallium/state_trackers/clover/llvm/invocation.cpp
@@ -281,8 +281,12 @@ clover::llvm::link_program(const std::vector<module> &modules,
 
    optimize(*mod, c->getCodeGenOpts().OptimizationLevel, !create_library);
 
+   static ::std::atomic_uint seq(0);
+   ::std::string id = "." + mod->getModuleIdentifier() + "-" +
+      ::std::to_string(seq++);
+
    if (has_flag(debug::llvm))
-      debug::log(".ll", print_module_bitcode(*mod));
+      debug::log(id + ".ll", print_module_bitcode(*mod));
 
    if (create_library) {
       return build_module_library(*mod, module::section::text_library);
@@ -292,7 +296,7 @@ clover::llvm::link_program(const std::vector<module> &modules,
 
    } else if (ir == PIPE_SHADER_IR_NATIVE) {
       if (has_flag(debug::native))
-         debug::log(".asm", print_module_native(*mod, target));
+         debug::log(id +  ".asm", print_module_native(*mod, target));
 
       return build_module_native(*mod, target, *c, r_log);
 
-- 
2.9.3



More information about the mesa-dev mailing list