broadcom/compiler: update ldvary thread switch delay slot restriction for v7.x
authorIago Toral Quiroga <itoral@igalia.com>
Tue, 23 Nov 2021 09:04:49 +0000 (10:04 +0100)
committerMarge Bot <emma+marge@anholt.net>
Fri, 13 Oct 2023 22:37:42 +0000 (22:37 +0000)
commit5e9b405aa71cd1d29c9dc57f9a4385630844e03b
treef9191d9a87b408844ea98e0bf0e608bbdfbaf938
parent526c1889e5d591da5c71caca5699f51e1f129be4
broadcom/compiler: update ldvary thread switch delay slot restriction for v7.x

In V3D 7.x we don't have accumulators which would not survive a thread
switch, so the only restriction is that ldvary can't be placed in the
second delay slot of a thread switch.

shader-db results for UnrealEngine4 shaders:

total instructions in shared programs: 446458 -> 446401 (-0.01%)
instructions in affected programs: 13492 -> 13435 (-0.42%)
helped: 58
HURT: 3
Instructions are helped.

total nops in shared programs: 19571 -> 19541 (-0.15%)
nops in affected programs: 161 -> 131 (-18.63%)
helped: 30
HURT: 0
Nops are helped.

Reviewed-by: Alejandro PiƱeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25450>
src/broadcom/compiler/qpu_schedule.c
src/broadcom/compiler/qpu_validate.c