gen8/cmd_buffer: Properly return flushed push constant stages
authorJason Ekstrand <jason.ekstrand@intel.com>
Wed, 2 Mar 2016 18:46:13 +0000 (10:46 -0800)
committerJason Ekstrand <jason.ekstrand@intel.com>
Wed, 2 Mar 2016 18:48:40 +0000 (10:48 -0800)
This is required on SKL so that we can properly re-emit binding table
pointers commands.

src/intel/vulkan/gen8_cmd_buffer.c

index 884152da20766f0132dc8b225d31b28fd6782dbc..9d4926f86cde15fd1ca9cec46201cd676363b87e 100644 (file)
@@ -63,9 +63,11 @@ cmd_buffer_flush_push_constants(struct anv_cmd_buffer *cmd_buffer)
                            .ConstantBuffer2ReadLength = DIV_ROUND_UP(state.alloc_size, 32),
                         });
       }
+
+      flushed |= mesa_to_vk_shader_stage(stage);
    }
 
-   cmd_buffer->state.push_constants_dirty &= ~VK_SHADER_STAGE_ALL_GRAPHICS;
+   cmd_buffer->state.push_constants_dirty &= ~flushed;
 
    return flushed;
 }