1fd89abcc3
vkd3d-shader: Enable DXIL support in the default configuration.
2025-02-24 15:10:08 +01:00
2e62e9ea7e
vkd3d-shader: Handle arrayed elements in vkd3d_shader_signature_from_shader_signature().
2025-02-20 15:57:26 +01:00
3aecbc5ac1
vkd3d-shader/hlsl: Also dump preprocessed shaders.
...
This could be useful since there are many shaders that contain `#include`
directives or use parameter-defined macros and we can't reproduce bugs
from the source alone.
2025-02-19 17:34:24 +01:00
8056058aa1
vkd3d-shader: Avoid passing NULL to memset(). (ubsan)
...
Otherwise ubsan reports errors such as:
libs/vkd3d-shader/spirv.c:7266:5: runtime error: null pointer passed as argument 1, which is declared to never be null
2025-01-10 19:51:55 +01:00
eaf4d0bfbf
vkd3d-shader: Avoid passing NULL to memcpy(). (ubsan)
...
Otherwise when passing "-fsanitize=undefined" to the compiler, ubsan
reports such as:
libs/vkd3d-shader/ir.c:3794:5: runtime error: null pointer passed as argument 1, which is declared to never be null
2025-01-10 19:51:43 +01:00
49fba97b0a
vkd3d-shader/spirv: Introduce a SPIR-V parser.
2024-12-09 14:22:24 +01:00
e20b63c55e
vkd3d-shader: Implement scanning hull shader tessellation information.
2024-11-21 15:03:02 +01:00
9e3b8ec98a
vkd3d-shader/msl: Output the generated shader code.
2024-11-20 14:40:10 +01:00
e781abc3fb
vkd3d-shader: Write uninitialized components of COLOR0 as 1.
2024-11-04 15:21:09 +01:00
91701f8303
vkd3d-shader: Warn instead of erroring out when failing to dump a shader.
...
It's a debug operation and shouldn't be considered fatal, even
for development workflows.
2024-10-23 16:14:33 +02:00
6a03369f84
vkd3d-shader: Do not dump the target shader if compilation failed.
...
Otherwise we'd use unitialized data.
2024-10-23 16:14:33 +02:00
32e6a1bb4d
vkd3d-shader: Validate the parsed shader in vsir_parse().
2024-10-23 16:02:09 +02:00
3a3f95e1e7
vkd3d-shader: Factor out a vsir_parse() helper.
2024-10-23 16:02:09 +02:00
6801ad9b7a
vkd3d-shader/fx: Introduce a parser/disassembler.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2024-10-14 15:20:41 +02:00
2d7832e738
vkd3d-shader/msl: Generate shader descriptor structure declarations.
2024-10-10 19:40:34 +02:00
16efb7c0c6
vkd3d-shader: Ignore the patch constant signature when it doesn't make sense.
2024-10-09 13:13:00 +02:00
1256b4f862
vkd3d-shader/d3d-asm: Rename vkd3d_shader_trace() to vsir_program_trace().
2024-10-08 22:04:59 +02:00
eb10f0897e
vkd3d-shader/glsl: Implement VKD3DSIH_LD.
2024-10-03 19:14:43 +02:00
ae40184631
vkd3d-shader/glsl: Implement support for VKD3DSPR_CONSTBUFFER registers.
2024-09-19 14:29:46 +02:00
5df81049aa
vkd3d-shader/msl: Call vsir_program_transform() before generating code.
2024-09-12 18:09:00 +02:00
47981def0d
vkd3d-shader/msl: Generate comments for unhandled instructions.
...
Similar to commit 8a60814476
for the GLSL
target.
2024-09-12 18:04:44 +02:00
23ba1a5e07
vkd3d-shader: Introduce VKD3D_SHADER_TARGET_MSL.
2024-09-12 17:03:32 +02:00
527966580e
vkd3d-shader: Dump the converted shader too.
2024-08-29 19:17:07 +02:00
1a0d6a4db4
vkd3d-shader: Use a hash to build the filename when dumping shaders.
...
This way the same shader is always dumped to the same path and when
launching the same program over and over we avoid both creating new
copies of the same file each time and overwriting different dumped
shaders.
2024-08-29 19:14:27 +02:00
27bceec965
vkd3d-shader: Replace assert() with VKD3D_ASSERT() in vkd3d_shader_main.c.
2024-08-08 23:39:23 +02:00