aco: Don't prematurely emit s_andn2.
authorGeorg Lehmann <dadschoorse@gmail.com>
Mon, 28 Nov 2022 16:10:22 +0000 (17:10 +0100)
committerMarge Bot <emma+marge@anholt.net>
Wed, 30 Nov 2022 18:25:15 +0000 (18:25 +0000)
commit22be0d09a005b4b955a46b65a919cfd786d6814f
treef24577d25ed43bcb732c02955bed9be2d4cebec3
parentdf0842c4f22c0df98a3b3c8166660d3d3bf6023c
aco: Don't prematurely emit s_andn2.

Split s_not + s_and allows more inverse comparision and s_cbranch_vccz
optimizations.

Foz-DB Navi21:
Totals from 516 (0.38% of 134913) affected shaders:
CodeSize: 7273724 -> 7273720 (-0.00%)
Instrs: 1364408 -> 1364407 (-0.00%)
Latency: 14604862 -> 14604858 (-0.00%)

Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19143>
src/amd/compiler/aco_instruction_selection.cpp