Mesa (main): pan/bi: Use the computed scale for fexp NaN propagation

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Aug 10 22:57:49 UTC 2021


Module: Mesa
Branch: main
Commit: ee2bb57f1ed2f19024adaf4f178a893354c680ae
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ee2bb57f1ed2f19024adaf4f178a893354c680ae

Author: Icecream95 <ixn at disroot.org>
Date:   Sun Aug  8 20:57:30 2021 +1200

pan/bi: Use the computed scale for fexp NaN propagation

This makes pow(NaN, x) return NaN rather than 1.0.

Fixes: 499397700c1 ("pan/bi: Don't lower fpow")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5189
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12269>

---

 src/panfrost/bifrost/bifrost_compile.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/panfrost/bifrost/bifrost_compile.c b/src/panfrost/bifrost/bifrost_compile.c
index a8df91075dd..651eaf7d690 100644
--- a/src/panfrost/bifrost/bifrost_compile.c
+++ b/src/panfrost/bifrost/bifrost_compile.c
@@ -1514,8 +1514,8 @@ bi_fexp_32(bi_builder *b, bi_index dst, bi_index s0, bi_index log2_base)
         bi_index fixed_pt = bi_f32_to_s32(b, scale, BI_ROUND_NONE);
 
         /* Compute the result for the fixed-point input, but pass along
-         * the original input for correct NaN propagation */
-        bi_fexp_f32_to(b, dst, fixed_pt, s0);
+         * the floating-point scale for correct NaN propagation */
+        bi_fexp_f32_to(b, dst, fixed_pt, scale);
 }
 
 static void



More information about the mesa-commit mailing list