Mesa (master): pan/mdg: Apply abs/neg modifiers
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue May 19 20:42:39 UTC 2020
Module: Mesa
Branch: master
Commit: b124f5315cf5b6a81ddfc18643a3a52ed9a87a83
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b124f5315cf5b6a81ddfc18643a3a52ed9a87a83
Author: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Date: Wed Apr 29 18:10:43 2020 -0400
pan/mdg: Apply abs/neg modifiers
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5102>
---
src/panfrost/midgard/midgard_compile.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/src/panfrost/midgard/midgard_compile.c b/src/panfrost/midgard/midgard_compile.c
index 0f57ba67626..96a8c1c9397 100644
--- a/src/panfrost/midgard/midgard_compile.c
+++ b/src/panfrost/midgard/midgard_compile.c
@@ -603,6 +603,15 @@ static void
mir_copy_src(midgard_instruction *ins, nir_alu_instr *instr, unsigned i, unsigned to, bool *abs, bool *neg, bool is_int, unsigned bcast_count)
{
nir_alu_src src = instr->src[i];
+
+ if (!is_int) {
+ if (pan_has_source_mod(&src, nir_op_fneg))
+ *neg = !(*neg);
+
+ if (pan_has_source_mod(&src, nir_op_fabs))
+ *abs = true;
+ }
+
unsigned bits = nir_src_bit_size(src.src);
ins->src[to] = nir_src_index(NULL, &src.src);
More information about the mesa-commit
mailing list