[Mesa-dev] [PATCH 2/2] glsl: Short-circuit lower_if_to_cond_assign when MaxIfDepth is UINT_MAX.

Bryan Cain bryancain3 at gmail.com
Tue Oct 18 23:48:24 PDT 2011


Looks good to me.

Bryan

On 10/18/2011 05:20 PM, Kenneth Graunke wrote:
> 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>
> Cc: Bryan Cain <bryancain3 at gmail.com>
> Cc: Ian Romanick <idr at freedesktop.org>
> ---
>  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-dev mailing list