r300: don't abort on flow control when using draw for vs

It can handle it just fine. Around 250 dEQPs go from Skip to Pass.

Fixes: 1021e2b946
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24769>
(cherry picked from commit 8657a09f9a)
This commit is contained in:
Pavel Ondračka 2023-08-17 18:01:28 +02:00 committed by Dylan Baker
parent 8ed55a67b4
commit ea6d27e4de
2 changed files with 3 additions and 2 deletions

View file

@ -5774,7 +5774,7 @@
"description": "r300: don't abort on flow control when using draw for vs",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "1021e2b946b18739b65b575b0770e6158ba05592",
"notes": null

View file

@ -171,7 +171,8 @@ r300_finalize_nir(struct pipe_screen *pscreen, void *nir)
nir_sweep(s);
if (!r300_screen(pscreen)->caps.is_r500) {
if (!r300_screen(pscreen)->caps.is_r500 &&
(r300_screen(pscreen)->caps.has_tcl || s->info.stage == MESA_SHADER_FRAGMENT)) {
char *msg = r300_check_control_flow(s);
if (msg)
return strdup(msg);