From 8892d276d2d722003a56b960df85f4c70420f351 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20=C5=9Alusarz?= Date: Tue, 10 Aug 2021 14:40:41 +0200 Subject: [PATCH] r600: preserve all metadata when passes don't make progress MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Marcin Ĺšlusarz Reviewed-by: Gert Wollny Part-of: --- src/gallium/drivers/r600/sfn/sfn_nir_lower_fs_out_to_vector.cpp | 2 ++ src/gallium/drivers/r600/sfn/sfn_nir_vectorize_vs_inputs.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/gallium/drivers/r600/sfn/sfn_nir_lower_fs_out_to_vector.cpp b/src/gallium/drivers/r600/sfn/sfn_nir_lower_fs_out_to_vector.cpp index 4a177d15dd9..b4a29731f73 100644 --- a/src/gallium/drivers/r600/sfn/sfn_nir_lower_fs_out_to_vector.cpp +++ b/src/gallium/drivers/r600/sfn/sfn_nir_lower_fs_out_to_vector.cpp @@ -142,6 +142,8 @@ bool NirLowerIOToVector::run(nir_function_impl *impl) bool progress = vectorize_block(&b, nir_start_block(impl)); if (progress) { nir_metadata_preserve(impl, nir_metadata_block_index | nir_metadata_dominance); + } else { + nir_metadata_preserve(impl, nir_metadata_all); } return progress; } diff --git a/src/gallium/drivers/r600/sfn/sfn_nir_vectorize_vs_inputs.c b/src/gallium/drivers/r600/sfn/sfn_nir_vectorize_vs_inputs.c index 2ff60cf6a77..35fd5cfffa1 100644 --- a/src/gallium/drivers/r600/sfn/sfn_nir_vectorize_vs_inputs.c +++ b/src/gallium/drivers/r600/sfn/sfn_nir_vectorize_vs_inputs.c @@ -443,6 +443,8 @@ r600_vectorize_io_impl(nir_function_impl *impl) if (progress) { nir_metadata_preserve(impl, nir_metadata_block_index | nir_metadata_dominance); + } else { + nir_metadata_preserve(impl, nir_metadata_all); } r600_vec_instr_set_destroy(instr_set);