Giovanni Mascellani
2377db33db
vkd3d-shader: Represent descriptor information in the vsir program.
2025-03-18 15:38:01 +01:00
Nikolay Sivov
fb5d53bf57
vkd3d-shader/fx: Add a helper to escape printed strings.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-03-17 14:46:18 +01:00
Henri Verbeet
1fd89abcc3
vkd3d-shader: Enable DXIL support in the default configuration.
2025-02-24 15:10:08 +01:00
Henri Verbeet
2e62e9ea7e
vkd3d-shader: Handle arrayed elements in vkd3d_shader_signature_from_shader_signature().
2025-02-20 15:57:26 +01:00
Francisco Casas
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
Francisco Casas
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
Francisco Casas
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
Giovanni Mascellani
49fba97b0a
vkd3d-shader/spirv: Introduce a SPIR-V parser.
2024-12-09 14:22:24 +01:00
Shaun Ren
e20b63c55e
vkd3d-shader: Implement scanning hull shader tessellation information.
2024-11-21 15:03:02 +01:00
Feifan He
9e3b8ec98a
vkd3d-shader/msl: Output the generated shader code.
2024-11-20 14:40:10 +01:00
Elizabeth Figura
e781abc3fb
vkd3d-shader: Write uninitialized components of COLOR0 as 1.
2024-11-04 15:21:09 +01:00
Giovanni Mascellani
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
Giovanni Mascellani
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
Elizabeth Figura
32e6a1bb4d
vkd3d-shader: Validate the parsed shader in vsir_parse().
2024-10-23 16:02:09 +02:00
Elizabeth Figura
3a3f95e1e7
vkd3d-shader: Factor out a vsir_parse() helper.
2024-10-23 16:02:09 +02:00
Nikolay Sivov
6801ad9b7a
vkd3d-shader/fx: Introduce a parser/disassembler.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2024-10-14 15:20:41 +02:00
Feifan He
2d7832e738
vkd3d-shader/msl: Generate shader descriptor structure declarations.
2024-10-10 19:40:34 +02:00
Giovanni Mascellani
16efb7c0c6
vkd3d-shader: Ignore the patch constant signature when it doesn't make sense.
2024-10-09 13:13:00 +02:00
Giovanni Mascellani
1256b4f862
vkd3d-shader/d3d-asm: Rename vkd3d_shader_trace() to vsir_program_trace().
2024-10-08 22:04:59 +02:00
Henri Verbeet
eb10f0897e
vkd3d-shader/glsl: Implement VKD3DSIH_LD.
2024-10-03 19:14:43 +02:00
Henri Verbeet
ae40184631
vkd3d-shader/glsl: Implement support for VKD3DSPR_CONSTBUFFER registers.
2024-09-19 14:29:46 +02:00
Feifan He
5df81049aa
vkd3d-shader/msl: Call vsir_program_transform() before generating code.
2024-09-12 18:09:00 +02:00
Feifan He
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
Feifan He
23ba1a5e07
vkd3d-shader: Introduce VKD3D_SHADER_TARGET_MSL.
2024-09-12 17:03:32 +02:00
Giovanni Mascellani
527966580e
vkd3d-shader: Dump the converted shader too.
2024-08-29 19:17:07 +02:00