summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Graunke <kenneth@whitecape.org>2015-11-02 21:21:25 -0800
committerEmil Velikov <emil.l.velikov@gmail.com>2015-11-07 15:17:49 +0000
commitba0c78f4e278a89e6871ac334819e73e41ddc94d (patch)
tree4e96c263a882c934321d9be44bd952d5b7263bc9
parenta4b73eeff083d04585ef4ea411f4fff45ea80b47 (diff)
nir: Properly invalidate metadata in nir_opt_copy_prop().
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com> Reviewed-by: Eduardo Lima Mitev <elima@igalia.com> Cc: mesa-stable@lists.freedesktop.org (cherry picked from commit 0f037bd71ffe083c05cd0867ef54bce91ff84243)
-rw-r--r--src/glsl/nir/nir_opt_copy_propagate.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/glsl/nir/nir_opt_copy_propagate.c b/src/glsl/nir/nir_opt_copy_propagate.c
index 71367d001bb..c9bdb3a8390 100644
--- a/src/glsl/nir/nir_opt_copy_propagate.c
+++ b/src/glsl/nir/nir_opt_copy_propagate.c
@@ -262,6 +262,12 @@ nir_copy_prop_impl(nir_function_impl *impl)
bool progress = false;
nir_foreach_block(impl, copy_prop_block, &progress);
+
+ if (progress) {
+ nir_metadata_preserve(impl, nir_metadata_block_index |
+ nir_metadata_dominance);
+ }
+
return progress;
}