Mesa (master): radeonsi: skip ES output stores for undefined output components
Marek Olšák
mareko at kemper.freedesktop.org
Fri May 18 17:38:28 UTC 2018
Module: Mesa
Branch: master
Commit: 3d64ed57853d59d602789c45b041af0f9e272a75
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3d64ed57853d59d602789c45b041af0f9e272a75
Author: Marek Olšák <marek.olsak at amd.com>
Date: Wed May 16 23:47:15 2018 -0400
radeonsi: skip ES output stores for undefined output components
Tested-by: Dieter Nützel <Dieter at nuetzel-hh.de>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
---
src/gallium/drivers/radeonsi/si_shader.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c
index e8d08cd8e7..0d24c3af10 100644
--- a/src/gallium/drivers/radeonsi/si_shader.c
+++ b/src/gallium/drivers/radeonsi/si_shader.c
@@ -3598,6 +3598,9 @@ static void si_llvm_emit_es_epilogue(struct ac_shader_abi *abi,
info->output_semantic_index[i]);
for (chan = 0; chan < 4; chan++) {
+ if (!(info->output_usagemask[i] & (1 << chan)))
+ continue;
+
LLVMValueRef out_val = LLVMBuildLoad(ctx->ac.builder, addrs[4 * i + chan], "");
out_val = ac_to_integer(&ctx->ac, out_val);
More information about the mesa-commit
mailing list