broadcom/compiler: Emit uniform loops using uniform control flow
authorArcady Goldmints-Orlov <agoldmints@igalia.com>
Thu, 24 Dec 2020 16:24:56 +0000 (10:24 -0600)
committerMarge Bot <eric+marge@anholt.net>
Mon, 1 Feb 2021 08:11:48 +0000 (08:11 +0000)
commit79bde75131c1f64bc34092a081c531b025a5a588
treec414fc1e4c063d8262ae9a2ca5430541ea3200af
parent6643bdbd5375de604001bc23d45eca134cc3a0f3
broadcom/compiler: Emit uniform loops using uniform control flow

Similarly to if statements, uniform loops are now emitted without
predication, using simple branches for breaks and continues. The
uniformity of the loop is determined by running the
nir_divergence_analysis pass.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7726>
src/broadcom/compiler/nir_to_vir.c
src/broadcom/compiler/v3d_compiler.h
src/broadcom/compiler/vir.c