vkd3d/libs/vkd3d-shader
Zebediah Figura d8ef0c69a8 vkd3d-shader/spirv: Do not declare resources as multisampled if the sample count is 1.
It is illegal to match a SPIR-V multisampled resource to a Vulkan resource which
is not multisampled. Vulkan considers a resource to be multisampled if its
sample count is greater than 1 (and SPIR-V does not care about the sample count).

This fixes validation errors in the case where the sample count does actually
match the resource. In order to provide correct behaviour when there is a
mismatch, or when the sample count is missing, we will need yet another
additional interface. In the absence of that it seems best to provide a best
guess.

This fixes a validation error with the not-yet-committed merge request 135, when
the d3d11 runner is run through Wine with the Vulkan backend.
2023-04-19 20:45:39 +02:00
..
checksum.c vkd3d-shader: Introduce vkd3d_make_u{16, 32}() helpers. 2021-08-11 20:58:24 +02:00
d3dbc.c vkd3d-shader/sm1: Pass a vkd3d_shader_sm1_parser structure to shader_sm1_is_end(). 2023-04-12 21:54:55 +02:00
dxbc.c vkd3d-shader/sm4: Get rid of shader_sm4_is_end(). 2023-04-12 21:54:57 +02:00
glsl.c vkd3d-shader/glsl: Update the current source location in vkd3d_glsl_generator_generate(). 2023-03-13 22:09:58 +01:00
hlsl_codegen.c vkd3d-shader: Consistently pass location structure by pointer. 2023-04-19 20:45:31 +02:00
hlsl_constant_ops.c vkd3d-shader/hlsl: Rename the "type" field of struct hlsl_type to "class". 2023-04-03 17:59:24 +02:00
hlsl_sm1.c vkd3d-shader/hlsl: Do not write DCL instructions for ps_1_* shaders. 2023-04-18 21:59:17 +02:00
hlsl_sm4.c vkd3d-shader/hlsl: Pass hlsl_block pointers to hlsl_new_if(). 2023-04-18 21:59:45 +02:00
hlsl.c vkd3d-shader: Consistently pass location structure by pointer. 2023-04-19 20:45:31 +02:00
hlsl.h vkd3d-shader: Consistently pass location structure by pointer. 2023-04-19 20:45:31 +02:00
hlsl.l vkd3d-shader/hlsl: Parse packoffset(). 2023-04-04 21:59:40 +02:00
hlsl.y vkd3d-shader: Consistently pass location structure by pointer. 2023-04-19 20:45:31 +02:00
ir.c vkd3d-shader/ir: Insert hull shader control point input declarations if no control point phase is defined. 2023-04-12 21:54:28 +02:00
libvkd3d-shader.pc.in build: Build libvkd3d-shader as public library. 2018-11-02 11:19:00 +01:00
preproc.h build: Make the default symbol visibility "hidden". 2021-08-09 21:43:22 +02:00
preproc.l vkd3d-shader/preproc: Don't add additional spaces after whitespace tokens. 2022-03-31 21:24:56 +02:00
preproc.y vkd3d-shader/hlsl: Handle over/underflow when parsing integer literals. 2022-05-12 19:33:56 +02:00
sm4.h vkd3d-shader/trace: Output sample count for multisampled resources. 2023-03-08 20:15:06 +01:00
spirv.c vkd3d-shader/spirv: Do not declare resources as multisampled if the sample count is 1. 2023-04-19 20:45:39 +02:00
trace.c vkd3d-shader/trace: Trace the normalised instruction array after tracing the input. 2023-04-03 17:58:23 +02:00
vkd3d_shader_main.c vkd3d-shader: Explicitly align the size in bytecode_get_next_offset() and rename it accordingly. 2023-04-06 17:52:16 +02:00
vkd3d_shader_private.h vkd3d-shader: Get rid of the "ptr" field from struct vkd3d_shader_parser. 2023-04-12 21:54:53 +02:00
vkd3d_shader.map vkd3d-shader/dxbc: Introduce API for serialising DXBC blobs. 2023-02-23 21:47:27 +01:00