Henri Verbeet
2a71e96a58
vkd3d-shader/spirv: Use spirv_get_type_id() in spirv_compiler_get_descriptor_index().
2025-09-04 14:03:34 +02:00
Henri Verbeet
0d8acc97a3
vkd3d-shader/spirv: Use spirv_get_type_id() in spirv_compiler_emit_register_addressing().
2025-09-04 14:03:34 +02:00
Henri Verbeet
d6bed4be37
vkd3d-shader/spirv: Use spirv_get_type_id() in spirv_compiler_get_buffer_parameter().
2025-09-02 11:36:37 +02:00
Henri Verbeet
b68096f52d
vkd3d-shader/spirv: Use spirv_get_type_id() in spirv_compiler_emit_spec_constant().
2025-09-02 11:36:37 +02:00
Henri Verbeet
c81b5398c2
vkd3d-shader/spirv: Use spirv_get_type_id() in spirv_compiler_get_type_id_for_reg().
2025-09-02 11:36:37 +02:00
Henri Verbeet
23c042f8ee
vkd3d-shader/spirv: Rename vkd3d_spirv_get_type_id_for_data_type() to spirv_get_type_id().
2025-09-02 11:36:37 +02:00
Henri Verbeet
3c006b2ae9
vkd3d-shader/spirv: Rename vkd3d_spirv_get_type_id() to spirv_get_type_id_for_component_type().
2025-09-02 11:36:37 +02:00
Henri Verbeet
979d7e4b85
vkd3d-shader/ir: Remove VSIR_OP_DCL_OUTPUT_TOPOLOGY instructions.
2025-09-01 15:15:32 +02:00
Henri Verbeet
392da43dd3
vkd3d-shader/ir: Remove VSIR_OP_DCL_INPUT_PRIMITIVE instructions.
2025-09-01 15:15:32 +02:00
Henri Verbeet
f732fb7889
Release 1.17.
2025-08-21 12:52:13 +02:00
Henri Verbeet
8334386d99
vkd3d-shader/spirv: Avoid emitting duplicate built-in inputs in spirv_compiler_emit_input().
...
This works around an issue introduced by commit
66cb2815f0
. SV_PRIMITIVE_ID inputs in
geometry shaders use VKD3DSPR_PRIMID registers, and we create the
corresponding SPIR-V inputs using spirv_compiler_emit_io_register().
Unfortunately we also have an input signature element for the same
input, and simply creating another PrimitiveId input would run into
VUID-StandaloneSpirv-OpEntryPoint-09658.
Before the commit mentioned above, we'd use DCL_INPUT instructions to
emit input declarations, and these would help to distinguish whether
VKD3DSPR_INPUT or VKD3DSPR_PRIMID registers were used for primitive ID
inputs. Note that we can't simply ignore input signature element with
SIGNATURE_TARGET_LOCATION_UNUSED; the DXIL parser emits SV_SAMPLE_INDEX
inputs with that target location, but does require them to use a
VKD3DSPR_INPUT register.
2025-08-13 15:54:12 +02:00
Giovanni Mascellani
52b9ef0426
vkd3d-shader/spirv: Support precise flags on SAMPLE_INFO instructions.
2025-07-29 12:31:36 +02:00
Giovanni Mascellani
53754f0583
vkd3d-shader/spirv: Support precise flags on RESINFO instructions.
2025-07-29 12:31:23 +02:00
Henri Verbeet
9b0087a111
vkd3d-shader/spirv: Emit OpLine instructions.
2025-07-28 16:11:29 +02:00
Henri Verbeet
f02405350e
vkd3d-shader/ir: Consistently use VSIR_DATA_U32 for resinfo_uint destination operands.
...
Much like we do for sample_info_uint.
2025-07-23 17:23:40 +02:00
Henri Verbeet
b88be5b92b
vkd3d-shader/ir: Consistently use VSIR_DATA_U32 for sample_info_uint destination operands.
...
The HLSL compiler already did this; the TPF and DXIL parsers did not.
Previously spirv_compiler_emit_sample_info() was unable to correctly
handle VSIR_DATA_U32 destinations; the new version is arguably simpler
as well.
2025-07-23 17:23:40 +02:00
Henri Verbeet
b8c73e4a2c
vkd3d-shader/spirv: Use spirv_compiler_error() to report unhandled resinfo flags.
2025-07-23 17:23:40 +02:00
Henri Verbeet
ed2a06af35
vkd3d-shader/spirv: Use spirv_compiler_error() to report unhandled sample_info flags.
2025-07-23 17:23:40 +02:00
Henri Verbeet
795211141f
vkd3d-shader/ir: Rename VKD3D_DATA_BOOL to VSIR_DATA_BOOL.
2025-07-23 17:19:28 +02:00
Giovanni Mascellani
bb51b976df
vkd3d-shader/ir: Use size_t in the parameter allocator.
...
The idea is to, by default, use size_t for any quantity that is
a memory size or an array index.
2025-07-23 17:16:38 +02:00
Giovanni Mascellani
7d9a86790e
vkd3d-shader/spirv: Use iterators in spirv_compiler_generate_spirv().
2025-07-22 16:56:07 +02:00
Henri Verbeet
1487764e23
vkd3d-shader/ir: Rename VKD3D_DATA_UINT64 to VSIR_DATA_U64.
2025-07-22 14:57:26 +02:00
Henri Verbeet
742cce9a08
vkd3d-shader/ir: Rename VKD3D_DATA_UINT to VSIR_DATA_U32.
2025-07-22 14:57:26 +02:00
Henri Verbeet
163b87444f
vkd3d-shader/ir: Rename VKD3D_DATA_UINT16 to VSIR_DATA_U16.
2025-07-22 14:57:26 +02:00
Henri Verbeet
a04e4e4010
vkd3d-shader/ir: Rename VKD3D_DATA_INT to VSIR_DATA_I32.
2025-07-22 14:57:26 +02:00