Reviewed-by: Jason Ekstrand <[email protected]> Have you audited to ensure that we don't actually use it in this case?
On Mon, May 7, 2018 at 1:01 AM, Samuel Iglesias Gonsálvez < [email protected]> wrote: > According to Vulkan spec: > > "pColorBlendState is a pointer to an instance of the > VkPipelineColorBlendStateCreateInfo structure, and is ignored if the > pipeline has rasterization disabled or if the subpass of the render > pass the > pipeline is created against does not use any color attachments." > > Fixes tests from CL#2505: > > dEQP-VK.renderpass.*.simple.color_unused_omit_blend_state > > Signed-off-by: Samuel Iglesias Gonsálvez <[email protected]> > --- > src/intel/vulkan/anv_pipeline.c | 14 ++++++++++++-- > 1 file changed, 12 insertions(+), 2 deletions(-) > > diff --git a/src/intel/vulkan/anv_pipeline.c b/src/intel/vulkan/anv_ > pipeline.c > index 87788de10a5..8f30136b100 100644 > --- a/src/intel/vulkan/anv_pipeline.c > +++ b/src/intel/vulkan/anv_pipeline.c > @@ -1247,8 +1247,18 @@ anv_pipeline_validate_create_info(const > VkGraphicsPipelineCreateInfo *info) > if (subpass && subpass->depth_stencil_attachment.attachment != > VK_ATTACHMENT_UNUSED) > assert(info->pDepthStencilState); > > - if (subpass && subpass->color_count > 0) > - assert(info->pColorBlendState); > + if (subpass && subpass->color_count > 0) { > + bool all_color_unused = true; > + for (int i = 0; i < subpass->color_count; i++) { > + if (subpass->color_attachments[i].attachment != > VK_ATTACHMENT_UNUSED) > + all_color_unused = false; > + } > + /* pColorBlendState is ignored if the pipeline has rasterization > + * disabled or if the subpass of the render pass the pipeline is > + * created against does not use any color attachments. > + */ > + assert(info->pColorBlendState || all_color_unused); > + } > } > > for (uint32_t i = 0; i < info->stageCount; ++i) { > -- > 2.17.0 > > _______________________________________________ > mesa-dev mailing list > [email protected] > https://lists.freedesktop.org/mailman/listinfo/mesa-dev >
_______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
