From b18d9c1b33c5332980a4a4137f927ed533c25991 Mon Sep 17 00:00:00 2001 From: Georg Lehmann Date: Sat, 24 Jan 2026 19:39:25 +0100 Subject: [PATCH] nir/opt_algebraic: optimize unpack_32_2x16 of extract MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-by: Marek Olšák Reviewed-by: Alyssa Rosenzweig Part-of: --- src/compiler/nir/nir_opt_algebraic.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/compiler/nir/nir_opt_algebraic.py b/src/compiler/nir/nir_opt_algebraic.py index 5f5c5ea2a50..a68885c56c1 100644 --- a/src/compiler/nir/nir_opt_algebraic.py +++ b/src/compiler/nir/nir_opt_algebraic.py @@ -2276,6 +2276,9 @@ optimizations.extend([ (('extract_u8', ('pack_32_4x8_split', a, b, c, d), 2), ('u2u', c)), (('extract_u8', ('pack_32_4x8_split', a, b, c, d), 3), ('u2u', d)), + (('unpack_32_2x16', ('extract_u16', a, 0)), ('vec2', ('unpack_32_2x16.x', a), 0)), + (('unpack_32_2x16', ('extract_u16', a, 1)), ('vec2', ('unpack_32_2x16.y', a), 0)), + # Reduce intermediate precision with int64. (('u2u32', ('iadd(is_used_once)', 'a@64', b)), ('iadd', ('u2u32', a), ('u2u32', b))),