Henri Verbeet
cab0bd07e5
vkd3d-shader/glsl: Resolve SSA values.
...
Since commit eaebef4265
we may receive
vsir generated from HLSL sources, which typically contains SSA values.
We could previously receive vsir with SSA values as well, but HLSL
sources would go through d3dbc/tpf as an intermediate step, making the
resulting vsir much less likely to contain SSA values.
2025-08-13 15:56:06 +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
Giovanni Mascellani
ddb65aac35
vkd3d-shader/glsl: Use iterators in vkd3d_glsl_generator_generate().
2025-07-22 17:01:04 +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
c5c1c03430
vkd3d-shader/ir: Rename VKD3D_DATA_FLOAT to VSIR_DATA_F32.
2025-07-21 12:10:43 +02:00
Henri Verbeet
0126beb3b2
vkd3d-shader/ir: Rename enum vkd3d_data_type to vsir_data_type.
2025-07-21 12:10:43 +02:00
Henri Verbeet
d219cccc99
vkd3d-shader/ir: Rename the VKD3DSIH_* enum elements to VSIR_OP_*.
2025-06-25 15:53:41 +02:00
Giovanni Mascellani
31581b0002
vkd3d-shader/ir: Lower IMUL and UMUL to IMUL_LOW.
2025-06-24 15:21:13 +02:00
Giovanni Mascellani
4a39db797b
vkd3d-shader/ir: Introduce VKD3DSIH_IMUL_LOW.
...
It is meant to compute the lower word of an integer multiplication.
2025-06-24 15:15:56 +02:00
Henri Verbeet
c8e6d35e17
vkd3d-shader/glsl: Use vsir_opcode_get_name() in shader_glsl_unhandled().
2025-06-10 17:44:18 +02:00
Giovanni Mascellani
bc0dd891c3
vkd3d-shader/glsl: Support the ABSNEG source modifier.
2025-06-02 20:35:48 +02:00
Giovanni Mascellani
9f5db1e3e4
vkd3d-shader/glsl: Ignore the PARTIALPRECISION destination modifier.
2025-06-02 20:32:46 +02:00
Giovanni Mascellani
5998723e7c
vkd3d-shader/glsl: Accept and ignore the REFACTORING_ALLOWED global flag.
2025-06-02 20:31:19 +02:00
Giovanni Mascellani
24e61cf74e
vkd3d-shader: Represent resource data types as vkd3d_data_type in struct vkd3d_shader_descriptor_info1.
2025-04-14 21:55:26 +02:00
Elizabeth Figura
33cd10581e
vkd3d-shader/glsl: Invert gl_FragCoord w.
2025-04-02 19:32:39 +02:00
Giovanni Mascellani
10d8760134
vkd3d-shader/ir: Validate register id and index for RESOURCE registers.
2025-04-02 19:06:43 +02:00
Giovanni Mascellani
2377db33db
vkd3d-shader: Represent descriptor information in the vsir program.
2025-03-18 15:38:01 +01:00
Henri Verbeet
808931b108
vkd3d-shader/glsl: Implement VKD3DSIH_XOR.
2025-03-17 15:07:51 +01:00
Shaun Ren
766492d1cc
vkd3d-shader/glsl: Implement support for indirect constant buffer addressing.
2025-03-12 17:06:47 +01:00
Giovanni Mascellani
64126a00c3
vkd3d-shader/ir: Give more meaningful names to I/O normalisation levels.
...
The previous names "not normalised" and "fully normalised" have meanings
which are likely to change with time. OTOH including a description of the
normalisation level in the enumerant seems excessive. Relating
normalisation levels to shader model versions might be a reasonable
compromise.
2024-12-12 17:21:49 +01:00
Giovanni Mascellani
1c93d706d7
vkd3d-shader/ir: Merge removing I/O declarations in the general instruction lowering pass.
2024-12-03 14:36:13 +01:00
Giovanni Mascellani
18e422dfe4
vkd3d-shader/ir: Encode I/O declarations in vsir_program.
...
Most I/O registers are already described by the shader signatures.
The registers that are not do not have any property other then
being used by the program or not, so they can be collectively
described with a bitmap.
2024-12-03 14:19:24 +01:00
Henri Verbeet
756b98f093
vkd3d-shader/glsl: Implement VKD3DSIH_LD2DMS.
2024-11-06 22:57:12 +01:00