Giovanni Mascellani (@giomasce) commented about libs/vkd3d-shader/spirv.c:
val_id = spirv_compiler_emit_load_src_with_type(compiler, &src[1], VKD3DSP_WRITEMASK_0, component_type);
+ if (instruction->flags & VKD3DARF_SEQ_CST) + WARN("Ignoring sequentially consistent ordering.\n"); + if (instruction->flags & VKD3DARF_VOLATILE) + WARN("Ignoring 'volatile' attribute.\n");
Do you plan to add them shortly? Sequential consistency should be pretty easy, you just have to add the appropriate flag. Volatile seems a bit more complicated: it requires the Vulkan memory model, which in turn is incompatible with sequential consistency. So I don't know what's the solution for this. I wonder whether volatile accesses are used often in practice. -- https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/707#note_65362