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

Author: Roland Scheidegger <[email protected]>
Date:   Mon Jan  1 03:04:38 2018 +0100

r600: set up constants needed for txq for buffers and cube maps with tes

We only did this for the other stages, but obviously tess eval/ctrl need it
too.
This fixes the (newly modified) piglit texturing/textureSize test when run
with tes stage and bufferSampler.

Reviewed-by: Dave Airlie <[email protected]>

---

 src/gallium/drivers/r600/r600_state_common.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/src/gallium/drivers/r600/r600_state_common.c 
b/src/gallium/drivers/r600/r600_state_common.c
index 1d9ff7bd6e..4429246d31 100644
--- a/src/gallium/drivers/r600/r600_state_common.c
+++ b/src/gallium/drivers/r600/r600_state_common.c
@@ -1812,6 +1812,22 @@ static bool r600_update_derived_state(struct 
r600_context *rctx)
                }
        }
 
+       if (rctx->tes_shader) {
+               assert(rctx->b.chip_class >= EVERGREEN);
+               need_buf_const = 
rctx->tes_shader->current->shader.uses_tex_buffers ||
+                                
rctx->tes_shader->current->shader.has_txq_cube_array_z_comp;
+               if (need_buf_const) {
+                       eg_setup_buffer_constants(rctx, PIPE_SHADER_TESS_EVAL);
+               }
+               if (rctx->tcs_shader) {
+                       need_buf_const = 
rctx->tcs_shader->current->shader.uses_tex_buffers ||
+                                        
rctx->tcs_shader->current->shader.has_txq_cube_array_z_comp;
+                       if (need_buf_const) {
+                               eg_setup_buffer_constants(rctx, 
PIPE_SHADER_TESS_CTRL);
+                       }
+               }
+       }
+
        r600_update_driver_const_buffers(rctx, false);
 
        if (rctx->b.chip_class < EVERGREEN && rctx->ps_shader && 
rctx->vs_shader) {

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to