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

Author: Marek Olšák <[email protected]>
Date:   Fri Oct 28 22:37:33 2016 +0200

glsl_to_tgsi: lower small branches based on the CAP

Reviewed-by: Nicolai Hähnle <[email protected]>

---

 src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp 
b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
index 64a68e0..7f19839 100644
--- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
+++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
@@ -6783,6 +6783,8 @@ st_link_shader(struct gl_context *ctx, struct 
gl_shader_program *prog)
                                                    
PIPE_SHADER_CAP_TGSI_DROUND_SUPPORTED);
       bool have_dfrexp = pscreen->get_shader_param(pscreen, ptarget,
                                                    
PIPE_SHADER_CAP_TGSI_DFRACEXP_DLDEXP_SUPPORTED);
+      unsigned if_threshold = pscreen->get_shader_param(pscreen, ptarget,
+                                                        
PIPE_SHADER_CAP_LOWER_IF_THRESHOLD);
 
       /* If there are forms of indirect addressing that the driver
        * cannot handle, perform the lowering pass.
@@ -6865,7 +6867,8 @@ st_link_shader(struct gl_context *ctx, struct 
gl_shader_program *prog)
            || progress;
 
          progress = lower_if_to_cond_assign((gl_shader_stage)i, ir,
-                                            options->MaxIfDepth) || progress;
+                                            options->MaxIfDepth, if_threshold) 
||
+                    progress;
 
       } while (progress);
 

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

Reply via email to