Mesa (master): anv/cmd_buffer: Manage Anv state around HZ op emission
Nanley Chery
nchery at kemper.freedesktop.org
Fri Nov 18 20:41:13 UTC 2016
Module: Mesa
Branch: master
Commit: 37c07d64b4d52e7053c6228dfaedbb1fbee74abf
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=37c07d64b4d52e7053c6228dfaedbb1fbee74abf
Author: Nanley Chery <nanley.g.chery at intel.com>
Date: Wed Sep 28 15:51:35 2016 -0700
anv/cmd_buffer: Manage Anv state around HZ op emission
Move the assignment to a less surprising location.
Signed-off-by: Nanley Chery <nanley.g.chery at intel.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
---
src/intel/vulkan/gen8_cmd_buffer.c | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/src/intel/vulkan/gen8_cmd_buffer.c b/src/intel/vulkan/gen8_cmd_buffer.c
index 0b1d5bf..c04dc24 100644
--- a/src/intel/vulkan/gen8_cmd_buffer.c
+++ b/src/intel/vulkan/gen8_cmd_buffer.c
@@ -455,9 +455,6 @@ genX(cmd_buffer_emit_hz_op)(struct anv_cmd_buffer *cmd_buffer,
hzp.FullSurfaceDepthandStencilClear = full_surface_op;
hzp.StencilClearValue =
cmd_state->attachments[ds].clear_value.depthStencil.stencil & 0xff;
-
- /* Mark aspects as cleared */
- cmd_state->attachments[ds].pending_clear_aspects = 0;
break;
case BLORP_HIZ_OP_DEPTH_RESOLVE:
hzp.DepthBufferResolveEnable = true;
@@ -506,11 +503,16 @@ genX(cmd_buffer_emit_hz_op)(struct anv_cmd_buffer *cmd_buffer,
anv_batch_emit(&cmd_buffer->batch, GENX(3DSTATE_WM_HZ_OP), hzp);
- if (!full_surface_op && op == BLORP_HIZ_OP_DEPTH_CLEAR) {
- anv_batch_emit(&cmd_buffer->batch, GENX(PIPE_CONTROL), pc) {
- pc.DepthStallEnable = true;
- pc.DepthCacheFlushEnable = true;
+ if (op == BLORP_HIZ_OP_DEPTH_CLEAR) {
+ if (!full_surface_op) {
+ anv_batch_emit(&cmd_buffer->batch, GENX(PIPE_CONTROL), pc) {
+ pc.DepthStallEnable = true;
+ pc.DepthCacheFlushEnable = true;
+ }
}
+
+ /* Mark aspects as cleared */
+ cmd_state->attachments[ds].pending_clear_aspects = 0;
}
}
More information about the mesa-commit
mailing list