[PATCH vkd3d v4 3/3] vkd3d-shader/spirv: Support UAV counter descriptor arrays.
Henri Verbeet
hverbeet at gmail.com
Wed Dec 15 12:27:55 CST 2021
On Fri, 3 Dec 2021 at 09:59, Conor McCarthy <cmccarthy at codeweavers.com> wrote:
> @@ -8903,6 +8883,23 @@ static void vkd3d_dxbc_compiler_emit_uav_counter_instruction(struct vkd3d_dxbc_c
> }
> else
> {
> + if (resource_symbol->info.resource.uav_counter_array)
> + {
> + const struct vkd3d_symbol_descriptor_array_data *array_data;
> + uint32_t index_id;
> +
> + index_id = vkd3d_dxbc_compiler_get_descriptor_index(compiler, &src->reg,
> + resource_symbol->info.resource.uav_counter_array,
> + resource_symbol->info.resource.uav_counter_base_idx,
> + resource_symbol->info.resource.resource_type_info->resource_type);
> +
> + array_data = &resource_symbol->info.resource.uav_counter_array->info.descriptor_array;
> + ptr_type_id = vkd3d_spirv_get_op_type_pointer(builder, array_data->storage_class,
> + array_data->contained_type_id);
> +
> + counter_id = vkd3d_spirv_build_op_access_chain(builder, ptr_type_id, counter_id, &index_id, 1);
> + }
> +
Should that apply to the "ssbo_uavs" path above as well?
More information about the wine-devel
mailing list