diff --git a/.pick_status.json b/.pick_status.json index 0a5c899bcfc..92875d99987 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1219,7 +1219,7 @@ "description": "nir/lower_double_ops: Rework the if (progress) tree", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "d7d35a9522ea5b524732a8b730008d725b84abdf" }, diff --git a/src/compiler/nir/nir_lower_double_ops.c b/src/compiler/nir/nir_lower_double_ops.c index bb2476523ec..f9c93a910a5 100644 --- a/src/compiler/nir/nir_lower_double_ops.c +++ b/src/compiler/nir/nir_lower_double_ops.c @@ -753,7 +753,14 @@ nir_lower_doubles_impl(nir_function_impl *impl, * inlining. */ nir_opt_deref_impl(impl); - } + } else if (progress) { + nir_metadata_preserve(impl, nir_metadata_block_index | + nir_metadata_dominance); + } else { +#ifndef NDEBUG + impl->valid_metadata &= ~nir_metadata_not_properly_reset; +#endif + } return progress; }