nir/algebraic: Remove problematic "optimization"
authorAlyssa Rosenzweig <alyssa@rosenzweig.io>
Wed, 15 May 2019 05:03:19 +0000 (05:03 +0000)
committerAlyssa Rosenzweig <alyssa@rosenzweig.io>
Thu, 16 May 2019 02:08:37 +0000 (02:08 +0000)
This line is no longer relevant now that booleans are 1-bit, and in fact
causes issues (infinite progress loop between algebraic optimizations
and copy prop) with constant vector masks.

No shader-db changes on Intel platforms (Jason).

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
src/compiler/nir/nir_opt_algebraic.py

index 1c7b3597c1fbc10ca19c74e76a231ddaf8725718..89d07aa126111d98cdc1c1627d8fe8fd40031a0c 100644 (file)
@@ -621,9 +621,6 @@ optimizations = [
    (('bcsel', True, b, c), b),
    (('bcsel', False, b, c), c),
    (('bcsel', a, ('b2f(is_used_once)', 'b@32'), ('b2f', 'c@32')), ('b2f', ('bcsel', a, b, c))),
-   # The result of this should be hit by constant propagation and, in the
-   # next round of opt_algebraic, get picked up by one of the above two.
-   (('bcsel', '#a', b, c), ('bcsel', ('ine', 'a', 0), b, c)),
 
    (('bcsel', a, b, b), b),
    (('fcsel', a, b, b), b),