Henri Verbeet : vkd3d-shader: Do not print FIXMEs for VKD3DSUF_ORDER_PRESERVING_COUNTER when generating SPIR-V.
Alexandre Julliard
julliard at winehq.org
Fri Feb 19 16:42:49 CST 2021
Module: vkd3d
Branch: master
Commit: 944665ed11650a72e36b40a2da0cd400cf76b375
URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=944665ed11650a72e36b40a2da0cd400cf76b375
Author: Henri Verbeet <hverbeet at codeweavers.com>
Date: Fri Feb 19 15:57:09 2021 +0100
vkd3d-shader: Do not print FIXMEs for VKD3DSUF_ORDER_PRESERVING_COUNTER when generating SPIR-V.
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
libs/vkd3d-shader/spirv.c | 21 +++++++++++++++------
1 file changed, 15 insertions(+), 6 deletions(-)
diff --git a/libs/vkd3d-shader/spirv.c b/libs/vkd3d-shader/spirv.c
index b0b2399..1448d3b 100644
--- a/libs/vkd3d-shader/spirv.c
+++ b/libs/vkd3d-shader/spirv.c
@@ -5644,9 +5644,12 @@ static void vkd3d_dxbc_compiler_emit_dcl_resource(struct vkd3d_dxbc_compiler *co
const struct vkd3d_shader_instruction *instruction)
{
const struct vkd3d_shader_semantic *semantic = &instruction->declaration.semantic;
+ uint32_t flags = instruction->flags;
- if (instruction->flags)
- FIXME("Unhandled UAV flags %#x.\n", instruction->flags);
+ /* We don't distinguish between APPEND and COUNTER UAVs. */
+ flags &= ~VKD3DSUF_ORDER_PRESERVING_COUNTER;
+ if (flags)
+ FIXME("Unhandled UAV flags %#x.\n", flags);
vkd3d_dxbc_compiler_emit_resource_declaration(compiler, &semantic->resource,
semantic->resource_type, semantic->resource_data_type[0], 0, false);
@@ -5656,9 +5659,12 @@ static void vkd3d_dxbc_compiler_emit_dcl_resource_raw(struct vkd3d_dxbc_compiler
const struct vkd3d_shader_instruction *instruction)
{
const struct vkd3d_shader_raw_resource *resource = &instruction->declaration.raw_resource;
+ uint32_t flags = instruction->flags;
- if (instruction->flags)
- FIXME("Unhandled UAV flags %#x.\n", instruction->flags);
+ /* We don't distinguish between APPEND and COUNTER UAVs. */
+ flags &= ~VKD3DSUF_ORDER_PRESERVING_COUNTER;
+ if (flags)
+ FIXME("Unhandled UAV flags %#x.\n", flags);
vkd3d_dxbc_compiler_emit_resource_declaration(compiler, &resource->resource,
VKD3D_SHADER_RESOURCE_BUFFER, VKD3D_DATA_UINT, 0, true);
@@ -5669,9 +5675,12 @@ static void vkd3d_dxbc_compiler_emit_dcl_resource_structured(struct vkd3d_dxbc_c
{
const struct vkd3d_shader_structured_resource *resource = &instruction->declaration.structured_resource;
unsigned int stride = resource->byte_stride;
+ uint32_t flags = instruction->flags;
- if (instruction->flags)
- FIXME("Unhandled UAV flags %#x.\n", instruction->flags);
+ /* We don't distinguish between APPEND and COUNTER UAVs. */
+ flags &= ~VKD3DSUF_ORDER_PRESERVING_COUNTER;
+ if (flags)
+ FIXME("Unhandled UAV flags %#x.\n", flags);
vkd3d_dxbc_compiler_emit_resource_declaration(compiler, &resource->resource,
VKD3D_SHADER_RESOURCE_BUFFER, VKD3D_DATA_UINT, stride / 4, false);
More information about the wine-cvs
mailing list