radv: do not update the number of scissors in vkCmdSetScissor()
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Mon, 18 Sep 2017 09:47:53 +0000 (11:47 +0200)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 20 Sep 2017 08:27:32 +0000 (10:27 +0200)
The Vulkan spec (1.0.61) says:

   "The number of scissors used by a pipeline is still specified
    by the scissorCount member of VkPipelinescissorStateCreateInfo."

So, the number of scissors is defined at pipeline creation
time and shouldn't be updated when they are set dynamically.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
src/amd/vulkan/radv_cmd_buffer.c

index 9724cc5..0c3a5c6 100644 (file)
@@ -2520,9 +2520,6 @@ void radv_CmdSetScissor(
        assert(firstScissor < MAX_SCISSORS);
        assert(total_count >= 1 && total_count <= MAX_SCISSORS);
 
-       if (cmd_buffer->state.dynamic.scissor.count < total_count)
-               cmd_buffer->state.dynamic.scissor.count = total_count;
-
        memcpy(cmd_buffer->state.dynamic.scissor.scissors + firstScissor,
               pScissors, scissorCount * sizeof(*pScissors));
        cmd_buffer->state.dirty |= RADV_CMD_DIRTY_DYNAMIC_SCISSOR;