[Mesa-dev] [PATCH] nir: lower fexp2(fmul(flog2(a), 2)) to fmul(a, a)

Ian Romanick idr at freedesktop.org
Mon Feb 5 23:29:52 UTC 2018


Do you have any data from shader-db for this change (and the other patch)?

On 02/05/2018 06:08 AM, Samuel Pitoiset wrote:
> Similar for the 4 case.
> 
> Suggested by Bas.
> 
> Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
> ---
>  src/compiler/nir/nir_opt_algebraic.py | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/src/compiler/nir/nir_opt_algebraic.py b/src/compiler/nir/nir_opt_algebraic.py
> index 6dc19d9b12..b30d1df199 100644
> --- a/src/compiler/nir/nir_opt_algebraic.py
> +++ b/src/compiler/nir/nir_opt_algebraic.py
> @@ -321,6 +321,8 @@ optimizations = [
>     (('~fexp2', ('fmul', ('flog2', a), b)), ('fpow', a, b), '!options->lower_fpow'), # 2^(lg2(a)*b) = a^b
>     (('~fexp2', ('fadd', ('fmul', ('flog2', a), b), ('fmul', ('flog2', c), d))),
>      ('~fmul', ('fpow', a, b), ('fpow', c, d)), '!options->lower_fpow'), # 2^(lg2(a) * b + lg2(c) + d) = a^b * c^d
> +   (('~fexp2', ('fmul', ('flog2', a), 2.0)), ('fmul', a, a)),
> +   (('~fexp2', ('fmul', ('flog2', a), 4.0)), ('fmul', ('fmul', a, a), ('fmul', a, a))),
>     (('~fpow', a, 1.0), a),
>     (('~fpow', a, 2.0), ('fmul', a, a)),
>     (('~fpow', a, 4.0), ('fmul', ('fmul', a, a), ('fmul', a, a))),
> 



More information about the mesa-dev mailing list