i965: Mark depth surfaces as needing a HiZ resolve after blitting
authorJason Ekstrand <jason.ekstrand@intel.com>
Fri, 26 May 2017 16:33:55 +0000 (09:33 -0700)
committerJason Ekstrand <jason.ekstrand@intel.com>
Thu, 8 Jun 2017 05:18:53 +0000 (22:18 -0700)
Cc: "17.0 17.1" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Chad Versace <chadversary@chromium.org>
src/mesa/drivers/dri/i965/intel_blit.c

index 61764fbe965af65619023a3bf71959e2796eb969..817fe7ac56bb10cc5fa7b71953a0b0fb55080d7e 100644 (file)
@@ -328,6 +328,7 @@ intel_miptree_blit(struct brw_context *brw,
    intel_miptree_slice_resolve_depth(brw, dst_mt, dst_level, dst_slice);
    intel_miptree_resolve_color(brw, src_mt, src_level, src_slice, 1, 0);
    intel_miptree_resolve_color(brw, dst_mt, dst_level, dst_slice, 1, 0);
+   intel_miptree_slice_set_needs_hiz_resolve(dst_mt, dst_level, dst_slice);
 
    if (src_flip)
       src_y = minify(src_mt->physical_height0, src_level - src_mt->first_level) - src_y - height;
@@ -386,6 +387,7 @@ intel_miptree_copy(struct brw_context *brw,
    intel_miptree_slice_resolve_depth(brw, dst_mt, dst_level, dst_slice);
    intel_miptree_resolve_color(brw, src_mt, src_level, src_slice, 1, 0);
    intel_miptree_resolve_color(brw, dst_mt, dst_level, dst_slice, 1, 0);
+   intel_miptree_slice_set_needs_hiz_resolve(dst_mt, dst_level, dst_slice);
 
    uint32_t src_image_x, src_image_y;
    intel_miptree_get_image_offset(src_mt, src_level, src_slice,