From 5d5a7bd2214bf60f40c725970dc59fe77aa7f605 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 15 Nov 2024 20:29:26 -0500 Subject: [PATCH] nir/lower_two_sided_color: fix for lowered IO 1-bit input loads are illegal in NIR. Reviewed-by: Alyssa Rosenzweig Part-of: --- src/compiler/nir/nir_lower_two_sided_color.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/compiler/nir/nir_lower_two_sided_color.c b/src/compiler/nir/nir_lower_two_sided_color.c index b7972419797..4fc752aeee6 100644 --- a/src/compiler/nir/nir_lower_two_sided_color.c +++ b/src/compiler/nir/nir_lower_two_sided_color.c @@ -164,7 +164,9 @@ nir_lower_two_sided_color_instr(nir_builder *b, nir_instr *instr, void *data) else { if (b->shader->info.io_lowered) { nir_io_semantics sem = {.location = VARYING_SLOT_FACE, .num_slots = 1}; - face = nir_load_input(b, 1, 1, nir_imm_int(b, 0), .base = 0, .dest_type = nir_type_bool, .io_semantics = sem); + face = nir_load_input(b, 1, 32, nir_imm_int(b, 0), .base = 0, + .dest_type = nir_type_bool32, .io_semantics = sem); + face = nir_b2b1(b, face); } else { nir_variable *var = nir_get_variable_with_location(b->shader, nir_var_shader_in, VARYING_SLOT_FACE, glsl_bool_type());