On Thursday, August 10, 2017 3:42:29 AM PDT Timothy Arceri wrote:
> The main motivation for this is that threaded compilation can fall
> over if we were to allocate IR inside constant_expression_value()
> when calling it on a builtin. This is because builtins are shared
> across the whole OpenGL context.
> 
> f81ede469910d worked around the problem by cloning the entire
> builtin before constant_expression_value() could be called on
> it. However cloning the whole function each time we referenced
> it lead to a significant reduction in the GLSL IR compiler
> performance. This change along with the following patch
> helps fix that performance regression.
> 
> Other advantages are that we reduce the number of calls to
> ralloc_parent(), and for loop unrolling we free constants after
> they are used rather than leaving them hanging around.
> 
> Cc: Kenneth Graunke <kenn...@whitecape.org>
> Cc: Lionel Landwerlin <lionel.g.landwer...@intel.com>

Looks good to me!  Thanks Tim!

Reviewed-by: Kenneth Graunke <kenn...@whitecape.org>

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to