OSDN Git Service

anv_cmd_buffer: Don't make the initial state dirty
authorNanley Chery <nanley.g.chery@intel.com>
Thu, 7 Apr 2016 09:47:28 +0000 (02:47 -0700)
committerNanley Chery <nanley.g.chery@intel.com>
Thu, 14 Apr 2016 00:52:24 +0000 (17:52 -0700)
Avoid excessive state emission. Relevant state for an action command
will get set by the user:

From Chapter 5. Command Buffers,
 When a command buffer begins recording, all state in that command
 buffer is undefined.
 [...]
 Whenever the state of a command buffer is undefined, the application
 must set all relevant state on the command buffer before any state
 dependent commands such as draws and dispatches are recorded, otherwise
 the behavior of executing that command buffer is undefined.

Signed-off-by: Nanley Chery <nanley.g.chery@intel.com>
Reviewed-by: Kristian Høgsberg Kristensen <kristian.h.kristensen@intel.com>
src/intel/vulkan/anv_cmd_buffer.c

index ac8bf5f..5693fab 100644 (file)
@@ -123,7 +123,7 @@ anv_cmd_state_reset(struct anv_cmd_buffer *cmd_buffer)
    /* 0 isn't a valid config.  This ensures that we always configure L3$. */
    cmd_buffer->state.current_l3_config = 0;
 
-   state->dirty = ~0;
+   state->dirty = 0;
    state->vb_dirty = 0;
    state->descriptors_dirty = 0;
    state->push_constants_dirty = 0;