v3dv: improve asserts for VkPipelineColorBlendStateCreateInfo handling

According to the Vulkan 1.0 spec:

  "attachmentCount is the number of VkPipelineColorBlendAttachmentState
   elements in pAttachments. This value must equal the colorAttachmentCount
   for the subpass in which this pipeline is used."

so let's assert exactly that.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6766>
This commit is contained in:
Iago Toral Quiroga 2020-03-31 12:56:16 +02:00 committed by Marge Bot
parent c6dca4c529
commit 152a64185b
1 changed files with 3 additions and 3 deletions

View File

@ -1577,14 +1577,14 @@ pack_blend(struct v3dv_pipeline *pipeline,
if (pipeline->subpass->color_count == 0)
return;
assert(pipeline->subpass->color_count == cb_info->attachmentCount);
pipeline->blend.needs_color_constants = false;
uint32_t color_write_masks = 0;
for (uint32_t i = 0; i < cb_info->attachmentCount; i++) {
for (uint32_t i = 0; i < pipeline->subpass->color_count; i++) {
const VkPipelineColorBlendAttachmentState *b_state =
&cb_info->pAttachments[i];
assert(i < pipeline->subpass->color_count);
uint32_t attachment_idx =
pipeline->subpass->color_attachments[i].attachment;
if (attachment_idx == VK_ATTACHMENT_UNUSED)