From f1647525ab0642b1bf424ebc366ad06748057baf Mon Sep 17 00:00:00 2001 From: Emma Anholt Date: Mon, 6 Dec 2021 12:25:02 -0800 Subject: [PATCH] nir/nir_to_tgsi: Add support for "if" statements with !native_integers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Previously we've only used this on HW that had all ifs lowered. Reviewed-by: Marek Olšák Part-of: --- src/gallium/auxiliary/nir/nir_to_tgsi.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/gallium/auxiliary/nir/nir_to_tgsi.c b/src/gallium/auxiliary/nir/nir_to_tgsi.c index c70bc200070..e8ae4017288 100644 --- a/src/gallium/auxiliary/nir/nir_to_tgsi.c +++ b/src/gallium/auxiliary/nir/nir_to_tgsi.c @@ -2324,7 +2324,12 @@ static void ntt_emit_if(struct ntt_compile *c, nir_if *if_stmt) { unsigned label; - ureg_UIF(c->ureg, c->if_cond, &label); + + if (c->native_integers) + ureg_UIF(c->ureg, c->if_cond, &label); + else + ureg_IF(c->ureg, c->if_cond, &label); + ntt_emit_cf_list(c, &if_stmt->then_list); if (!nir_cf_list_is_empty_block(&if_stmt->else_list)) {