diff options
author | Gert Wollny <gw.fossdev@gmail.com> | 2018-01-14 18:13:31 +0100 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2018-01-15 09:14:22 +1000 |
commit | 5d6470d26b267d522dd343740878bde46f21c446 (patch) | |
tree | 6377eed9c637ab6a1e37d108326efed7da6ea674 | |
parent | f10bd0a0e1f7cba65a4b462016d3869351b20106 (diff) |
r600/shader: Initialize max_driver_temp_used correctly for the first time
Without this initialization the temp registers used in tgsi_declaration
may used random indices, and this may result in failing translation from TGSI
with an error message "GPR limit exceeded", because the random index is greater
then the allowed limit implying that the shader uses more temporary registers then
available.
Signed-off-by: Gert Wollny <gw.fossdev@gmail.com>
Cc: <mesa-stable@lists.freedesktop.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r-- | src/gallium/drivers/r600/r600_shader.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index f2bc34660f..ab18a6e08e 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -3336,6 +3336,7 @@ static int r600_shader_from_tgsi(struct r600_context *rctx, ctx.nliterals = 0; ctx.literals = NULL; + ctx.max_driver_temp_used = 0; shader->fs_write_all = ctx.info.properties[TGSI_PROPERTY_FS_COLOR0_WRITES_ALL_CBUFS] && ctx.info.colors_written == 1; |