summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeon
diff options
context:
space:
mode:
authorNicolai Hähnle <nicolai.haehnle@amd.com>2016-10-07 17:14:54 +0200
committerNicolai Hähnle <nicolai.haehnle@amd.com>2016-10-10 10:38:30 +0200
commit38cfd5160ad3859dfd2c4af289f860198d6f4590 (patch)
tree49428fb0b65f191bc67b55fb76afb25293727f3e /src/gallium/drivers/radeon
parent39a29c243162e57c0e45a83133ece00ffb44e76b (diff)
gallium/radeon: assign a name to LLVM output variables in debug builds
This can be helpful with R600_DEBUG=preoptir. Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Diffstat (limited to 'src/gallium/drivers/radeon')
-rw-r--r--src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c b/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c
index da4a030a9ef..c8435417419 100644
--- a/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c
+++ b/src/gallium/drivers/radeon/radeon_setup_tgsi_llvm.c
@@ -703,6 +703,7 @@ static void emit_declaration(struct lp_build_tgsi_context *bld_base,
case TGSI_FILE_OUTPUT:
{
+ char name[16] = "";
unsigned idx;
for (idx = decl->Range.First; idx <= decl->Range.Last; idx++) {
unsigned chan;
@@ -710,9 +711,13 @@ static void emit_declaration(struct lp_build_tgsi_context *bld_base,
if (ctx->soa.outputs[idx][0])
continue;
for (chan = 0; chan < TGSI_NUM_CHANNELS; chan++) {
+#ifdef DEBUG
+ snprintf(name, sizeof(name), "OUT%d.%c",
+ idx, "xyzw"[chan % 4]);
+#endif
ctx->soa.outputs[idx][chan] = lp_build_alloca_undef(
&ctx->gallivm,
- ctx->soa.bld_base.base.elem_type, "");
+ ctx->soa.bld_base.base.elem_type, name);
}
}
break;