From bbc6bb1f06bcf83e89c35366cc723451357015fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 30 Sep 2024 21:00:32 -0400 Subject: [PATCH] nir/opt_vectorize_io: fix skipped output vectorization if inputs were vectorized Fixes: 2514999c9c5d4b64b00 - nir: add nir_opt_vectorize_io, vectorizing lowered IO Reviewed-by: Georg Lehmann Part-of: (cherry picked from commit f546df95a6662c187a5fa15aa20de9af89e17488) --- .pick_status.json | 2 +- src/compiler/nir/nir_opt_vectorize_io.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 964f6fa76b2..91d4416fb71 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -94,7 +94,7 @@ "description": "nir/opt_vectorize_io: fix skipped output vectorization if inputs were vectorized", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "2514999c9c5d4b64b007304e46f0a41d50e71cc9", "notes": null diff --git a/src/compiler/nir/nir_opt_vectorize_io.c b/src/compiler/nir/nir_opt_vectorize_io.c index 3351e759d0a..fc4cefc063a 100644 --- a/src/compiler/nir/nir_opt_vectorize_io.c +++ b/src/compiler/nir/nir_opt_vectorize_io.c @@ -449,8 +449,9 @@ nir_opt_vectorize_io(nir_shader *shader, nir_variable_mode modes) * but that is only done when outputs are ignored, so vectorize them * separately. */ - return nir_opt_vectorize_io(shader, nir_var_shader_in) || - nir_opt_vectorize_io(shader, nir_var_shader_out); + bool progress_in = nir_opt_vectorize_io(shader, nir_var_shader_in); + bool progress_out = nir_opt_vectorize_io(shader, nir_var_shader_out); + return progress_in || progress_out; } /* Initialize dynamic arrays. */