From: Vadim Girlin Date: Fri, 16 Dec 2011 03:32:07 +0000 (+0400) Subject: r600g: fix gpr number calculation X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=65b35b63d377a1a74627d60ea6f8f1caae6a01a9;p=mesa.git r600g: fix gpr number calculation Reviewed-by: Alex Deucher Signed-off-by: Tom Stellard --- diff --git a/src/gallium/drivers/r600/r600_asm.c b/src/gallium/drivers/r600/r600_asm.c index 3298386a44e..0ecca363f1c 100644 --- a/src/gallium/drivers/r600/r600_asm.c +++ b/src/gallium/drivers/r600/r600_asm.c @@ -290,6 +290,9 @@ int r600_bytecode_add_output(struct r600_bytecode *bc, const struct r600_bytecod { int r; + if (output->gpr >= bc->ngpr) + bc->ngpr = output->gpr + 1; + if (bc->cf_last && (bc->cf_last->inst == output->inst || (bc->cf_last->inst == BC_INST(bc, V_SQ_CF_ALLOC_EXPORT_WORD1_SQ_CF_INST_EXPORT) && output->inst == BC_INST(bc, V_SQ_CF_ALLOC_EXPORT_WORD1_SQ_CF_INST_EXPORT_DONE))) &&