summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r600/r600_shader.c
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2015-11-30 10:49:11 +1000
committerDave Airlie <[email protected]>2015-12-07 09:59:00 +1000
commitbdf7dadda8815f00fd6eb3c418fd0f12df32826d (patch)
tree645eb5c0cdfbfe8ebf23d0adaf8b9d5d00d99851 /src/gallium/drivers/r600/r600_shader.c
parent8849867b8a85b387b0ee113013e18e8cff153bbb (diff)
r600: disable SB for now on tess related shaders.
Note we have to disable on vertex shaders when we are operating in tes mode. Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r600/r600_shader.c')
-rw-r--r--src/gallium/drivers/r600/r600_shader.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c
index ef024e626c9..338427e894e 100644
--- a/src/gallium/drivers/r600/r600_shader.c
+++ b/src/gallium/drivers/r600/r600_shader.c
@@ -161,6 +161,13 @@ int r600_pipe_shader_create(struct pipe_context *ctx,
R600_ERR("translation from TGSI failed !\n");
goto error;
}
+ if (shader->shader.processor_type == TGSI_PROCESSOR_VERTEX) {
+ /* only disable for vertex shaders in tess paths */
+ if (key.vs.as_ls)
+ use_sb = 0;
+ }
+ use_sb &= (shader->shader.processor_type != TGSI_PROCESSOR_TESS_CTRL);
+ use_sb &= (shader->shader.processor_type != TGSI_PROCESSOR_TESS_EVAL);
/* disable SB for shaders using doubles */
use_sb &= !shader->shader.uses_doubles;