802d7317cb
vkd3d-shader/hlsl: Implement the InterlockedXor() intrinsic.
2025-01-20 15:42:45 +01:00
cbd504e888
vkd3d-shader/hlsl: Implement the InterlockedOr() intrinsic.
2025-01-20 15:42:45 +01:00
5b9634a7b7
vkd3d-shader/hlsl: Implement the InterlockedMin() intrinsic.
2025-01-20 15:42:43 +01:00
63fbe161f2
vkd3d-shader/hlsl: Implement the InterlockedMax() intrinsic.
2025-01-20 15:42:07 +01:00
b447fdce51
vkd3d-shader/hlsl: Implement the InterlockedExchange() intrinsic.
2025-01-20 15:41:07 +01:00
22ab08f4d8
vkd3d-shader/hlsl: Implement the InterlockedCompareExchange() intrinsic.
2025-01-20 15:41:07 +01:00
3b19a4aaf3
vkd3d-shader/hlsl: Implement the InterlockedAnd() intrinsic.
2025-01-20 15:41:07 +01:00
660a71ef22
vkd3d-shader/hlsl: Implement the InterlockedAdd() intrinsic.
2025-01-20 15:40:34 +01:00
a082daeb56
vkd3d-shader/hlsl: Implement the isinf() intrinsic.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-01-16 19:25:02 +01:00
29bac62ba2
vkd3d-shader/hlsl: Move the "dimx" and "dimy" fields to the type-specific union.
2025-01-10 19:38:13 +01:00
1ff1a51e4b
vkd3d-shader/hlsl: Avoid some uses of the default case when switching over hlsl_base_type.
...
Since we have -Wswitch, this forces the developer to update all relevant
switches when an enum case is added.
Places where the default is just a FIXME are left alone.
2025-01-10 19:24:10 +01:00
474a0ac4e2
vkd3d-shader/hlsl: Use swizzle helpers in more places.
2024-12-12 17:11:53 +01:00
a905a78a96
vkd3d-shader/hlsl: Use a structure for matrix swizzles.
2024-12-12 17:11:27 +01:00
ed6061dfae
vkd3d-shader/hlsl: Drop the _ir_ infix from enum hlsl_loop_unroll_type.
2024-12-12 16:54:07 +01:00
351d58a95b
vkd3d-shader/hlsl: Partially defer continue resolution.
...
We need 'for' iter blocks to be separate for loop unrolling.
2024-12-12 16:41:34 +01:00
01117c716d
vkd3d-shader/hlsl: Remove unused expr ops.
...
These correspond to specific SM1 opcodes which we don't use (and which the native compiler never uses either).
2024-12-04 14:38:32 +01:00
74365417ac
vkd3d-shader/hlsl: Output the candidates for ambiguous function calls.
2024-12-03 14:38:33 +01:00
4ca4dc0b2a
vkd3d-shader/hlsl: Introduce hlsl_dump_ir_function_decl().
2024-12-03 14:38:33 +01:00
0b726e4408
vkd3d-shader/hlsl: Introduce hlsl_dump_type().
2024-12-03 14:38:33 +01:00
198c3dc7b9
vkd3d-shader/hlsl: Remove hlsl_ir_vsir_instruction_ref, again.
2024-11-27 13:03:15 +01:00
1a6409cd5b
vkd3d-shader/hlsl: Add parser support for stream-output object types.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2024-11-21 19:28:46 +01:00
1a28e7d9c6
vkd3d-shader/hlsl: Add parser support for the ByteAddressBuffer type.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2024-11-06 21:56:27 +01:00
cf27065b7d
vkd3d-shader/hlsl: Add parser support for the RWByteAddressBuffer type.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2024-10-28 17:44:28 +01:00
bb74180659
vkd3d-shader/hlsl: Return an error expression when an invalid subscript is used.
2024-10-28 15:40:41 +01:00
158bf794e6
vkd3d-shader/hlsl: Introduce hlsl_ir_vsir_instruction_ref, again.
...
This node type will be deleted (again) once the hlsl->vsir->tpf
translation is complete. It serves the purpose of allowing to keep
both real hlsl_ir_nodes and vsir_instructions in the hlsl_block,
until all the former can be translated into the latter.
2024-10-24 20:50:59 +02:00