On 10/02/2013 10:48 AM, Eric Anholt wrote:
Chad Versace <chad.vers...@linux.intel.com> writes:

In 3DSTATE_DEPTH_BUFFER, we set Width and Height to the miptree slice's
physical dimensions. (Logical and physical dimensions may differ for
multisample surfaces).

However, in SURFACE_STATE, we always set Width and Height to the slice's
logical dimensions. We should do the same for 3DSTATE_DEPTH_BUFFER,
because the hw docs say so.

No Piglit regressions (-x glx) on Ivybridge with Wayland.

CC: Paul Berry <stereotype...@gmail.com>
CC: Jordan Justen <jordan.l.jus...@intel.com>
CC: Ben Widawsky <b...@bwidawsk.net>
Signed-off-by: Chad Versace <chad.vers...@linux.intel.com>
---
  src/mesa/drivers/dri/i965/gen7_blorp.cpp    | 3 ---
  src/mesa/drivers/dri/i965/gen7_misc_state.c | 5 -----
  2 files changed, 8 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/gen7_blorp.cpp 
b/src/mesa/drivers/dri/i965/gen7_blorp.cpp
index 9df3d92..158f801 100644
--- a/src/mesa/drivers/dri/i965/gen7_blorp.cpp
+++ b/src/mesa/drivers/dri/i965/gen7_blorp.cpp
@@ -705,9 +705,6 @@ gen7_blorp_emit_depth_stencil_config(struct brw_context 
*brw,
         */
        surfwidth = params->depth.width;
        surfheight = params->depth.height;
-   } else {
-      surfwidth = params->depth.mt->physical_width0;
-      surfheight = params->depth.mt->physical_height0;
     }

It looks like surfwidth/height doesn't get initialized in this case any
more.  logical_width0 wouldn't be right either, since you actually want
the logical of the particular slice.


This function doesn't use offsets into the depth buffer. It sets the 
3DSTATE_DEPTH_BUFFER
lod and min_array_element fields, just as is done by gen7_misc_state.c. 
Therefore,
I think that the deleted else branch should now look like this:

  } else {
     surfwidth = params->depth.mt->logical_width0;
     surfheight = params->depth.mt->logical_height0;
  }

Does anyone see any problems with that? Of course, I'll retest the patch.


The gen7_misc_state.c hunk is good, though.


_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to