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: 8ec174b3f9 ("pco: add support for various selection, complex, trig ops")
Signed-off-by: Icenowy Zheng <zhengxingda@iscas.ac.cn>
Reviewed-by: Simon Perretta <simon.perretta@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40611>
This commit is contained in:
Icenowy Zheng 2026-03-24 23:45:56 +08:00 committed by Marge Bot
parent daeb00df14
commit 54860bb4c7

View file

@ -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'])]