From ee8916c414dcc140ad379793cc3fee801ea5a0b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 24 Dec 2024 13:36:44 -0500 Subject: [PATCH] nir: use IO intrinsics in nir_lower_drawpixels Reviewed-by: Alyssa Rosenzweig Part-of: --- src/compiler/nir/nir_lower_drawpixels.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/compiler/nir/nir_lower_drawpixels.c b/src/compiler/nir/nir_lower_drawpixels.c index 3f0874a8634..f9aa2472919 100644 --- a/src/compiler/nir/nir_lower_drawpixels.c +++ b/src/compiler/nir/nir_lower_drawpixels.c @@ -40,6 +40,13 @@ typedef struct { static nir_def * get_texcoord(nir_builder *b, lower_drawpixels_state *state) { + if (b->shader->info.io_lowered) { + nir_def *baryc = + nir_load_barycentric_pixel(b, 32, .interp_mode = INTERP_MODE_SMOOTH); + return nir_load_interpolated_input(b, 4, 32, baryc, nir_imm_int(b, 0), + .io_semantics.location = VARYING_SLOT_TEX0); + } + if (state->texcoord == NULL) { state->texcoord = nir_get_variable_with_location(state->shader, nir_var_shader_in, VARYING_SLOT_TEX0, glsl_vec4_type());