glsl: Rewrite and fix min/max to saturate optimization.
There were some bugs, and the code was really difficult to follow. We would optimize min(max(x, b), 1.0) into max(sat(x), b) but not pay attention to the order of min/max and also do max(min(x, b), 1.0) into max(sat(x), b) Corrects four shaders from Champions of Regnum that do min(max(x, 1), 10) and corrects rendering of Mass Effect under VMware Workstation. Cc: "10.4 10.5" <mesa-stable@lists.freedesktop.org> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89180 Reviewed-by:Abdiel Janulgue <abdiel.janulgue@linux.intel.com> Reviewed-by:
Ian Romanick <ian.d.romanick@intel.com>
Loading
Please register or sign in to comment