pvr: fix setup of load op unresolved msaa mask
authorFrank Binns <frank.binns@imgtec.com>
Tue, 26 Sep 2023 21:48:08 +0000 (22:48 +0100)
committerMarge Bot <emma+marge@anholt.net>
Tue, 10 Oct 2023 18:10:52 +0000 (18:10 +0000)
Bits were being assigned rather than ORed into the mask during setup. Noticed
through code inspection.

Fixes: e089166776d ("pvr: Add support for VK_ATTACHMENT_LOAD_OP_LOAD.")
Signed-off-by: Frank Binns <frank.binns@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25487>

src/imagination/vulkan/pvr_pass.c

index fd731be..eca2934 100644 (file)
@@ -254,7 +254,7 @@ pvr_create_subpass_load_op(struct pvr_device *device,
          pass->attachments[attachment_idx].vk_format;
 
       if (pass->attachments[attachment_idx].sample_count > 1)
-         load_op->clears_loads_state.unresolved_msaa_mask = BITFIELD_BIT(i);
+         load_op->clears_loads_state.unresolved_msaa_mask |= BITFIELD_BIT(i);
 
       if (hw_subpass->color_initops[i] == VK_ATTACHMENT_LOAD_OP_LOAD)
          load_op->clears_loads_state.rt_load_mask |= BITFIELD_BIT(i);
@@ -296,7 +296,7 @@ pvr_create_render_load_op(struct pvr_device *device,
          pass->attachments[color_init->index].vk_format;
 
       if (pass->attachments[color_init->index].sample_count > 1)
-         load_op->clears_loads_state.unresolved_msaa_mask = BITFIELD_BIT(i);
+         load_op->clears_loads_state.unresolved_msaa_mask |= BITFIELD_BIT(i);
 
       if (color_init->op == VK_ATTACHMENT_LOAD_OP_LOAD)
          load_op->clears_loads_state.rt_load_mask |= BITFIELD_BIT(i);