735 Commits

Author SHA1 Message Date
Victor Chiletto
e615e435d9 vkd3d-shader/hlsl: Split matrix copies from resource loads. 2025-08-05 14:25:50 +02:00
Victor Chiletto
e718546ee5 vkd3d-shader/hlsl: Transform hlsl_ir_index into structured buffers into field specific hlsl_ir_resource_loads. 2025-08-05 14:25:50 +02:00
Victor Chiletto
5dbf859029 vkd3d-shader/hlsl: Parse SRV structured buffers. 2025-08-05 14:25:50 +02:00
Francisco Casas
5dca0da2da vkd3d-shader/hlsl: Use vsir_program_append() in generate_vsir_add_program_instruction(). 2025-08-04 14:58:14 +02:00
Francisco Casas
be5a9c2ca8 vkd3d-shader/hlsl: Use vsir_program_append() in sm1_generate_vsir_sampler_dcls(). 2025-08-04 14:52:50 +02:00
Francisco Casas
81488ce330 vkd3d-shader/hlsl: Use vsir_program_append() in sm1_generate_vsir_constant_defs(). 2025-08-04 14:47:58 +02:00
Henri Verbeet
bb2979aa4c vkd3d-shader/hlsl: Generate vsir signatures in hlsl_emit_vsir(). 2025-07-29 13:15:22 +02:00
Henri Verbeet
49b857c5b7 vkd3d-shader/hlsl: Initialise the vsir program in hlsl_emit_vsir(). 2025-07-29 13:15:22 +02:00
Giovanni Mascellani
aba355896f vkd3d-shader/hlsl: Reject geometry shaders with instance count.
We currently emit a warning and miscompile them.
2025-07-29 12:51:06 +02:00
Henri Verbeet
eaebef4265 vkd3d-shader/hlsl: Emit vsir from hlsl_emit_bytecode(). 2025-07-28 16:10:15 +02:00
Henri Verbeet
aebe64ecac vkd3d-shader/ir: Rename VKD3D_DATA_UNUSED to VSIR_DATA_UNUSED. 2025-07-23 17:19:28 +02:00
Henri Verbeet
ca24aada9a vkd3d-shader/ir: Rename VKD3D_DATA_MIXED to VSIR_DATA_MIXED. 2025-07-23 17:19:28 +02:00
Henri Verbeet
ed695cc551 vkd3d-shader/ir: Rename VKD3D_DATA_SNORM to VSIR_DATA_SNORM. 2025-07-23 17:19:28 +02:00
Henri Verbeet
ed27427508 vkd3d-shader/ir: Rename VKD3D_DATA_UNORM to VSIR_DATA_UNORM. 2025-07-23 17:19:28 +02:00
Nikolay Sivov
83e54bdc0c vkd3d-shader/hlsl: Handle HLSL_RESOURCE_SAMPLE_LOD in sm1_generate_vsir_instr_resource_load().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=58063
2025-07-23 17:06:21 +02:00
Anna (navi) Figueiredo Gomes
a7266284ee vkd3d-shader/hlsl: Move hlsl_ir_function_decl->extern_vars to a local variable. 2025-07-23 16:56:06 +02:00
Anna (navi) Figueiredo Gomes
db80f09c7a vkd3d-shader/hlsl: Don't create a temporary copy for a uniform if one already exists.
This can currently never happen, because we only ever process each uniform
once. However, this will change once we support compiling multiple shaders
in effects.
2025-07-23 16:37:54 +02:00
Anna (navi) Figueiredo Gomes
f4d95af91d vkd3d-shader/hlsl: Add temporary variables to "dummy_scope" in prepend_uniform_copy().
These are not looked up by name, so we don't need them in a specific scope.

Moreover, since we generate the temporaries using the same storage
modifiers as the uniforms, hlsl_emit_bytecode() will treat them as new
uniforms if run multiple times. That function is currently only run
once, but this will change when compiling shaders in effects.
2025-07-23 16:33:35 +02:00
Anna (navi) Figueiredo Gomes
66895e2605 vkd3d-shader/hlsl: Reset "extern_vars" before processing "entry_func" in hlsl_emit_bytecode(). 2025-07-23 16:32:34 +02:00
Francisco Casas
844f33025e vkd3d-shader/hlsl: Dump processed function bodies. 2025-07-23 16:31:59 +02:00
Anna (navi) Figueiredo Gomes
f420e25fd5 vkd3d-shader/hlsl: Clone the entry point body and redirect processing to the clone. 2025-07-23 15:54:52 +02:00
Henri Verbeet
b4bf2af315 vkd3d-shader/ir: Consistently use VKD3D_DATA_UNUSED for STREAM registers. 2025-07-22 14:59:27 +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
a04e4e4010 vkd3d-shader/ir: Rename VKD3D_DATA_INT to VSIR_DATA_I32. 2025-07-22 14:57:26 +02:00
Henri Verbeet
db149cd8cf vkd3d-shader/ir: Rename VKD3D_DATA_DOUBLE to VSIR_DATA_F64. 2025-07-21 12:10:43 +02:00