Zebediah Figura
dfe056596a
vkd3d-shader/hlsl: Return an hlsl_ir_node pointer from hlsl_new_int_constant().
2023-04-20 22:54:09 +02:00
Conor McCarthy
a4a95aa950
vkd3d: Treat negative viewport widths as invalid.
...
Negative widths are not supported in Vulkan.
2023-04-20 22:53:48 +02:00
Conor McCarthy
5d724abc96
vkd3d: Do not skip all viewports if one is invalid.
...
Fixes blank screen in Assassin's Creed: Valhalla.
2023-04-20 22:53:46 +02:00
Ethan Lee
81cc077b53
tests: Add tests for any() intrinsic.
...
Currently only tests float and bool, scalar and vector.
Signed-off-by: Ethan Lee <flibitijibibo@gmail.com>
2023-04-19 20:46:53 +02:00
Ethan Lee
0668d32631
vkd3d-shader/hlsl: Add support for any() intrinsic.
...
For now, this is limited to float and bool, scalar and vector. All other types are unsupported.
Signed-off-by: Ethan Lee <flibitijibibo@gmail.com>
2023-04-19 20:46:53 +02:00
Francisco Casas
3f9cd58f5b
vkd3d-shader/hlsl: Fix missing extern resource names.
2023-04-19 20:46:53 +02:00
Giovanni Mascellani
625155bd3c
tests: Pop the shader runner context after processing the current section.
...
This way failures produced while compiling or preprocessing a shader
are shown with the appropriate context.
2023-04-19 20:46:53 +02:00
Conor McCarthy
db7359f36a
tests: Test index buffer location zero in test_draw_indexed_instanced().
...
Only verify it doesn't crash.
2023-04-19 20:46:53 +02:00
Conor McCarthy
333fdf7c74
vkd3d: Check for index buffer location zero.
...
VK_EXT_robustness2 does not support null index buffers so we only
warn and return immediately.
2023-04-19 20:46:53 +02:00
Conor McCarthy
5244fa572f
tests: Test null addresses in test_update_root_descriptors().
2023-04-19 20:46:00 +02:00
Conor McCarthy
0526f232cd
vkd3d: Support null address for SRV/UAV root descriptors.
2023-04-19 20:46:00 +02:00
Conor McCarthy
963e5e26dc
vkd3d: Support null address for CBV root descriptors.
2023-04-19 20:46:00 +02:00
Nikolay Sivov
827a359b45
vkd3d-shader/hlsl: Handle uppercase regset names in packoffset().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-04-19 20:45:50 +02:00
Nikolay Sivov
0cea4d352e
vkd3d-shader/hlsl: Handle uppercase regset names in register().
2023-04-19 20:45:48 +02:00
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
Nikolay Sivov
dfe923ea1d
vkd3d-shader: Consistently pass location structure by pointer.
2023-04-19 20:45:31 +02:00
Conor McCarthy
0ce55e8b8e
vkd3d: Support 1D SRV.
2023-04-18 22:00:17 +02:00
Conor McCarthy
6db9ed14dc
vkd3d: Support 1D UAV.
2023-04-18 22:00:17 +02:00
Conor McCarthy
7d0aaea4f8
tests: Test 1D UAV clear.
2023-04-18 22:00:01 +02:00
Zebediah Figura
7ee66351c8
vkd3d-shader/hlsl: Return an hlsl_ir_node pointer from hlsl_new_if().
2023-04-18 21:59:49 +02:00
Zebediah Figura
50f0ae1b21
vkd3d-shader/hlsl: Pass hlsl_block pointers to hlsl_new_if().
2023-04-18 21:59:45 +02:00
Zebediah Figura
5a3fe1609b
vkd3d-shader/hlsl: Initialize the block in clone_block().
2023-04-18 21:59:44 +02:00
Zebediah Figura
733141720a
vkd3d-shader/hlsl: Introduce a hlsl_block_cleanup() helper.
2023-04-18 21:59:42 +02:00
Zebediah Figura
dc7514afc9
vkd3d-shader/hlsl: Return an hlsl_ir_node pointer from hlsl_new_float_constant().
2023-04-18 21:59:39 +02:00
Zebediah Figura
b23ef3ca3b
vkd3d-shader/hlsl: Return an hlsl_ir_node pointer from hlsl_new_cast() and hlsl_new_copy().
2023-04-18 21:59:37 +02:00