From 54860bb4c733194b3eebd26414d3c38b64d10cf3 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Tue, 24 Mar 2026 23:45:56 +0800 Subject: [PATCH] pco: fix encoding of fred's s0abs bit The s0abs bit in the encoing of fred instruction is wrongly set to the status of .neg modifier instead of .abs modifier. Fix this copy-n-paste error. Fixes GLCTS tests when running on top of Zink: dEQP-GLES2.functional.shaders.random.trigonometric.vertex.4 dEQP-GLES2.functional.shaders.random.trigonometric.vertex.45 dEQP-GLES2.functional.shaders.random.trigonometric.fragment.4 dEQP-GLES2.functional.shaders.random.trigonometric.fragment.45 Fixes: 8ec174b3f9a4 ("pco: add support for various selection, complex, trig ops") Signed-off-by: Icenowy Zheng Reviewed-by: Simon Perretta Part-of: --- src/imagination/pco/pco_map.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/imagination/pco/pco_map.py b/src/imagination/pco/pco_map.py index 41b7059b7cc..db17d6251dc 100644 --- a/src/imagination/pco/pco_map.py +++ b/src/imagination/pco/pco_map.py @@ -995,7 +995,7 @@ encode_map(O_FRED, ('red_type', OM_FRED_TYPE), ('pwen', ('!pco_ref_is_null', DEST(2))), ('s0neg', (RM_NEG, SRC(0))), - ('s0abs', (RM_NEG, SRC(0))) + ('s0abs', (RM_ABS, SRC(0))) ]) ], op_ref_maps=[('0', [['w0', '_'], ['w1', '_'], ['p0', '_']], ['s0', ['s3', '_'], 'imm'])]