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

Author: Karol Herbst <kher...@redhat.com>
Date:   Sun Oct 22 16:49:42 2023 +0200

zink: lower fisnormal as it requires the Kernel Cap

I didn't check if it's a valid vulkan SPIR-V opcode and turns out it isn't

Fixes: 82eed326f47 ("zink: support more nir opcodes")
Signed-off-by: Karol Herbst <kher...@redhat.com>
Acked-by: Mike Blumenkrantz <michael.blumenkra...@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25837>

---

 src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c | 1 -
 src/gallium/drivers/zink/zink_compiler.c             | 1 +
 2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c 
b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c
index e46b1586025..2bf5c0fab7a 100644
--- a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c
+++ b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c
@@ -1853,7 +1853,6 @@ emit_alu(struct ntv_context *ctx, nir_alu_instr *alu)
    UNOP(nir_op_f2f64, SpvOpFConvert)
    UNOP(nir_op_bitfield_reverse, SpvOpBitReverse)
    UNOP(nir_op_bit_count, SpvOpBitCount)
-   UNOP(nir_op_fisnormal, SpvOpIsNormal)
 #undef UNOP
 
    case nir_op_f2f16_rtz:
diff --git a/src/gallium/drivers/zink/zink_compiler.c 
b/src/gallium/drivers/zink/zink_compiler.c
index 41d7fff635a..68719acd4b6 100644
--- a/src/gallium/drivers/zink/zink_compiler.c
+++ b/src/gallium/drivers/zink/zink_compiler.c
@@ -1212,6 +1212,7 @@ zink_screen_init_compiler(struct zink_screen *screen)
       .lower_fsat = true,
       .lower_hadd = true,
       .lower_iadd_sat = true,
+      .lower_fisnormal = true,
       .lower_extract_byte = true,
       .lower_extract_word = true,
       .lower_insert_byte = true,

Reply via email to