aco: fix redirect combine in propagate_constants_vop3p() with negatives
authorRhys Perry <pendingchaos02@gmail.com>
Mon, 2 May 2022 12:16:54 +0000 (13:16 +0100)
committerMarge Bot <emma+marge@anholt.net>
Tue, 5 Jul 2022 16:39:56 +0000 (16:39 +0000)
commit33befb58b048659bc9b36e4deade617f2ec7c20f
treeeae0cf1c014112520b8dae6d381a0ce9859aa781
parentfc39c3a0b1e044878cc002f41d121ba1e4a69dae
aco: fix redirect combine in propagate_constants_vop3p() with negatives

This previously didn't correctly consider negative integers when bits=16
(which sign-extend) and would have combined 0xfffe0000.xy as -2.yx. Now it
combines 0xfffeffff.xy as that instead. It was also skipped when bits=32.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16296>
src/amd/compiler/aco_optimizer.cpp