Mesa (master): radeonsi: don' t try to eliminate trivial VS outputs for PS and CS

Marek Olšák mareko at kemper.freedesktop.org
Wed Nov 30 01:27:13 UTC 2016


Module: Mesa
Branch: master
Commit: a91add9369792fa846b0aea116b2f9b141e39728
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a91add9369792fa846b0aea116b2f9b141e39728

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Sat Nov 26 22:44:10 2016 +0100

radeonsi: don't try to eliminate trivial VS outputs for PS and CS

PS and CS don't have any param exports, so it's a no-op.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>

---

 src/gallium/drivers/radeonsi/si_shader.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c
index 6228a68..20f4a1d 100644
--- a/src/gallium/drivers/radeonsi/si_shader.c
+++ b/src/gallium/drivers/radeonsi/si_shader.c
@@ -6487,7 +6487,10 @@ static void si_eliminate_const_vs_outputs(struct si_shader_context *ctx)
 
 	exports.num = 0;
 
-	if (shader->key.as_es || shader->key.as_ls)
+	if (ctx->type == PIPE_SHADER_FRAGMENT ||
+	    ctx->type == PIPE_SHADER_COMPUTE ||
+	    shader->key.as_es ||
+	    shader->key.as_ls)
 		return;
 
 	/* Process all LLVM instructions. */




More information about the mesa-commit mailing list