From 98e3c1e6fb0290c1ec119285c91ab79b313c7c6b Mon Sep 17 00:00:00 2001 From: Boris Brezillon Date: Wed, 4 Dec 2024 11:14:06 +0100 Subject: [PATCH] nir: Let nir_lower_texcoord_replace_late() report progress Useful if we want to wrap this pass with a NIR_PASS() to enforce validation. Signed-off-by: Boris Brezillon Reviewed-by: Alyssa Rosenzweig Reviewed-by: Mary Guillemard Reviewed-by: Chia-I Wu Part-of: --- src/compiler/nir/nir.h | 2 +- .../nir/nir_lower_texcoord_replace_late.c | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/compiler/nir/nir.h b/src/compiler/nir/nir.h index 817a9a1a07b..f7c0e25406f 100644 --- a/src/compiler/nir/nir.h +++ b/src/compiler/nir/nir.h @@ -6706,7 +6706,7 @@ bool nir_lower_point_size(nir_shader *shader, float min, float max); void nir_lower_texcoord_replace(nir_shader *s, unsigned coord_replace, bool point_coord_is_sysval, bool yinvert); -void nir_lower_texcoord_replace_late(nir_shader *s, unsigned coord_replace, +bool nir_lower_texcoord_replace_late(nir_shader *s, unsigned coord_replace, bool point_coord_is_sysval); typedef enum { diff --git a/src/compiler/nir/nir_lower_texcoord_replace_late.c b/src/compiler/nir/nir_lower_texcoord_replace_late.c index d47ac10cfad..ee470a5606e 100644 --- a/src/compiler/nir/nir_lower_texcoord_replace_late.c +++ b/src/compiler/nir/nir_lower_texcoord_replace_late.c @@ -69,7 +69,7 @@ pass(nir_builder *b, nir_instr *instr, void *data) return true; } -void +bool nir_lower_texcoord_replace_late(nir_shader *s, unsigned coord_replace, bool point_coord_is_sysval) { @@ -80,7 +80,7 @@ nir_lower_texcoord_replace_late(nir_shader *s, unsigned coord_replace, /* If no relevant texcoords are read, there's nothing to do */ if (!(s->info.inputs_read & replace_mask)) - return; + return false; /* Otherwise, we're going to replace these texcoord reads with a PNTC read */ s->info.inputs_read &= ~(((uint64_t)coord_replace) << VARYING_SLOT_TEX0); @@ -88,10 +88,10 @@ nir_lower_texcoord_replace_late(nir_shader *s, unsigned coord_replace, if (!point_coord_is_sysval) s->info.inputs_read |= BITFIELD64_BIT(VARYING_SLOT_PNTC); - nir_shader_instructions_pass(s, pass, - nir_metadata_control_flow, - &(struct opts){ - .coord_replace = coord_replace, - .point_coord_is_sysval = point_coord_is_sysval, - }); + return nir_shader_instructions_pass(s, pass, + nir_metadata_control_flow, + &(struct opts){ + .coord_replace = coord_replace, + .point_coord_is_sysval = point_coord_is_sysval, + }); }