panvk: Skip blend descriptors when no fragment shader is present

Fix "dEQP-VK.pipeline.*.empty_fs.*" tests crashes.

Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30484>
This commit is contained in:
Mary Guillemard
2024-08-02 09:42:30 +02:00
parent d4e8c8f874
commit 091df61138

View File

@@ -363,10 +363,12 @@ panvk_draw_prepare_fs_rsd(struct panvk_cmd_buffer *cmdbuf,
mali_ptr fs_code = panvk_shader_get_dev_addr(fs);
panvk_per_arch(blend_emit_descs)(
dev, cb, cmdbuf->state.gfx.render.color_attachments.fmts,
cmdbuf->state.gfx.render.color_attachments.samples, fs_info, fs_code, bds,
&blend_reads_dest, &blend_shader_loads_blend_const);
if (fs_info != NULL) {
panvk_per_arch(blend_emit_descs)(
dev, cb, cmdbuf->state.gfx.render.color_attachments.fmts,
cmdbuf->state.gfx.render.color_attachments.samples, fs_info, fs_code,
bds, &blend_reads_dest, &blend_shader_loads_blend_const);
}
pan_pack(rsd, RENDERER_STATE, cfg) {
bool alpha_to_coverage = dyns->ms.alpha_to_coverage_enable;