Mesa (master): glsl: Short-circuit lower_if_to_cond_assign when MaxIfDepth is UINT_MAX.

Kenneth Graunke kwg at kemper.freedesktop.org
Fri Oct 21 01:11:32 PDT 2011


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

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Tue Oct 18 15:04:37 2011 -0700

glsl: Short-circuit lower_if_to_cond_assign when MaxIfDepth is UINT_MAX.

Setting MaxIfDepth to UINT_MAX effectively means "don't lower anything."

Explicitly checking for this common case allows us to avoid walking the
IR, computing nesting levels, and so on.

Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Bryan Cain <bryancain3 at gmail.com>

---

 src/glsl/lower_if_to_cond_assign.cpp |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/src/glsl/lower_if_to_cond_assign.cpp b/src/glsl/lower_if_to_cond_assign.cpp
index 7b89a15..2c5d561 100644
--- a/src/glsl/lower_if_to_cond_assign.cpp
+++ b/src/glsl/lower_if_to_cond_assign.cpp
@@ -79,6 +79,9 @@ public:
 bool
 lower_if_to_cond_assign(exec_list *instructions, unsigned max_depth)
 {
+   if (max_depth == UINT_MAX)
+      return false;
+
    ir_if_to_cond_assign_visitor v(max_depth);
 
    visit_list_elements(&v, instructions);



More information about the mesa-commit mailing list