ir3/postsched: Rewrite delay handling
authorConnor Abbott <cwabbott0@gmail.com>
Wed, 3 Nov 2021 17:06:17 +0000 (18:06 +0100)
committerMarge Bot <emma+marge@anholt.net>
Wed, 17 Nov 2021 13:41:47 +0000 (13:41 +0000)
commit6f5c0d209c3949ff2522afa9965fa69811adcb9b
treef4bd7cfc6f03cce9f36cc02679109008966c933d
parent140e117f2b0c45439a913efe0a4fd1df0842fdfb
ir3/postsched: Rewrite delay handling

Analogous to the pre-RA scheduler. Unfortunately this time it's a bit
more involved because we have to correctly handle (rptN), which is
already relevant for swz. This means we need the index of the
destination register that conflicts with the source register, to handle
swz, and we need to expose that part of ir3_delay. But once that's done,
we can delete ir3_delay_calc_postra.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13722>
src/freedreno/ir3/ir3.h
src/freedreno/ir3/ir3_delay.c
src/freedreno/ir3/ir3_legalize.c
src/freedreno/ir3/ir3_postsched.c
src/freedreno/ir3/tests/delay.c