aco: Fix signed-vs-unsigned warning.
[mesa.git] / src / amd / vulkan / radv_meta_fmask_expand.c
index a8f5e0cc4c191245a943fba5bd89ffa9ba81d075..ca0b82a3bf4155b3df91477675c4b9efba91ff08 100644 (file)
@@ -52,7 +52,7 @@ build_fmask_expand_compute_shader(struct radv_device *device, int samples)
                                                       img_type, "out_img");
        output_img->data.descriptor_set = 0;
        output_img->data.binding = 0;
-       output_img->data.image.access = ACCESS_NON_READABLE;
+       output_img->data.access = ACCESS_NON_READABLE;
 
        nir_ssa_def *invoc_id = nir_load_local_invocation_id(&b);
        nir_ssa_def *wg_id = nir_load_work_group_id(&b);
@@ -98,6 +98,7 @@ build_fmask_expand_compute_shader(struct radv_device *device, int samples)
                store->src[1] = nir_src_for_ssa(global_id);
                store->src[2] = nir_src_for_ssa(nir_imm_int(&b, i));
                store->src[3] = nir_src_for_ssa(outval);
+               store->src[4] = nir_src_for_ssa(nir_imm_int(&b, 0));
                nir_builder_instr_insert(&b, &store->instr);
        }
 
@@ -123,7 +124,7 @@ radv_expand_fmask_image_inplace(struct radv_cmd_buffer *cmd_buffer,
        radv_CmdBindPipeline(radv_cmd_buffer_to_handle(cmd_buffer),
                             VK_PIPELINE_BIND_POINT_COMPUTE, pipeline);
 
-       for (unsigned l = 0; l < subresourceRange->layerCount; l++) {
+       for (unsigned l = 0; l < radv_get_layerCount(image, subresourceRange); l++) {
                struct radv_image_view iview;
 
                radv_image_view_init(&iview, device,
@@ -139,7 +140,7 @@ radv_expand_fmask_image_inplace(struct radv_cmd_buffer *cmd_buffer,
                                                     .baseArrayLayer = subresourceRange->baseArrayLayer + l,
                                                     .layerCount = 1,
                                             },
-                                    });
+                                    }, NULL);
 
                radv_meta_push_descriptor_set(cmd_buffer,
                                              VK_PIPELINE_BIND_POINT_COMPUTE,
@@ -169,7 +170,7 @@ radv_expand_fmask_image_inplace(struct radv_cmd_buffer *cmd_buffer,
        radv_meta_restore(&saved_state, cmd_buffer);
 
        cmd_buffer->state.flush_bits |= RADV_CMD_FLAG_CS_PARTIAL_FLUSH |
-                                       RADV_CMD_FLAG_INV_GLOBAL_L2;
+                                       RADV_CMD_FLAG_INV_L2;
 
        /* Re-initialize FMASK in fully expanded mode. */
        radv_initialize_fmask(cmd_buffer, image, subresourceRange);