From 92b66b38c94bbcdf9633756f92c196fcfea20ac1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Nicolai=20H=C3=A4hnle?= Date: Mon, 8 Aug 2016 21:55:47 +0200 Subject: [PATCH] gallium/radeon: more descriptive names for LLVM temporaries in debug builds MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Reviewed-by: Tom Stellard Reviewed-by: Marek Olšák --- src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c b/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c index 7b96a58..22ff18e 100644 --- a/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c +++ b/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c @@ -38,6 +38,7 @@ #include "util/u_memory.h" #include "util/u_debug.h" +#include #include #include @@ -428,6 +429,7 @@ static void emit_declaration(struct lp_build_tgsi_context *bld_base, case TGSI_FILE_TEMPORARY: { + char name[16] = ""; LLVMValueRef array_alloca = NULL; unsigned decl_size; first = decl->Range.First; @@ -465,10 +467,14 @@ static void emit_declaration(struct lp_build_tgsi_context *bld_base, } if (!array_alloca) { for (i = 0; i < decl_size; ++i) { +#ifdef DEBUG + snprintf(name, sizeof(name), "TEMP%d.%c", + first + i / 4, "xyzw"[i % 4]); +#endif ctx->temps[first * TGSI_NUM_CHANNELS + i] = si_build_alloca_undef(bld_base->base.gallivm, bld_base->base.vec_type, - "temp"); + name); } } else { LLVMValueRef idxs[2] = { @@ -476,9 +482,13 @@ static void emit_declaration(struct lp_build_tgsi_context *bld_base, NULL }; for (i = 0; i < decl_size; ++i) { +#ifdef DEBUG + snprintf(name, sizeof(name), "TEMP%d.%c", + first + i / 4, "xyzw"[i % 4]); +#endif idxs[1] = lp_build_const_int32(bld_base->base.gallivm, i); ctx->temps[first * TGSI_NUM_CHANNELS + i] = - LLVMBuildGEP(builder, array_alloca, idxs, 2, "temp"); + LLVMBuildGEP(builder, array_alloca, idxs, 2, name); } } break; -- 2.7.4