broadcom/compiler: track pending ldtmu count with each TMU lookup

And use this information when scheduling QPU to avoid merging
a new TMU request into a previous ldtmu instruction when doing
so may cause TMU output fifo overflow due to a stalling ldtmu.

Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22044>
This commit is contained in:
Iago Toral Quiroga
2023-03-20 11:15:40 +01:00
committed by Marge Bot
parent c09482b293
commit 1e28f2a6f2
5 changed files with 86 additions and 17 deletions

View File

@@ -173,6 +173,11 @@ struct qinst {
/* If this is a a TLB Z write */
bool is_tlb_z_write;
/* If this is a retiring TMU instruction (the last in a lookup sequence),
* how many ldtmu instructions are required to read the results.
*/
uint32_t ldtmu_count;
/* Position of this instruction in the program. Filled in during
* register allocation.
*/