Anna (navi) Figueiredo Gomes
dd3524444d
vkd3d-shader/hlsl: Properly free default values when discarding them.
2025-11-17 15:17:45 +01:00
Shaun Ren
200e66ba4f
vkd3d-shader/hlsl: Store the flatten type in struct hlsl_ir_if.
2025-10-30 17:46:12 +01:00
Elizabeth Figura
deb7a67d67
vkd3d-shader/hlsl: Introduce hlsl_block_add_constant().
2025-10-28 16:30:49 +01:00
Anna (navi) Figueiredo Gomes
c73afe94f1
vkd3d-shader/hlsl: Remove the duplicate HLSL_IR_STRING_CONSTANT branch from evaluate_static_expression().
2025-10-14 15:47:05 +02:00
Elizabeth Figura
c8b2aca23d
vkd3d-shader/hlsl: Make ConstructGSWithSO an intrinsic function.
...
It's not a keyword.
2025-10-07 13:10:26 +02:00
Shaun Ren
44582a930c
vkd3d-shader/hlsl: Handle the "_centroid" modifier suffix in semantic names.
2025-10-06 15:18:48 +02:00
Petrichor Park
e35604dbf0
vkd3d-shader/hlsl: Implement the firstbitlow() intrinsic.
2025-09-22 11:26:42 +02:00
Petrichor Park
e6d840170d
vkd3d-shader/hlsl: Implement the firstbithigh() intrinsic.
2025-09-22 11:26:42 +02:00
Petrichor Park
e49beca0d5
vkd3d-shader/hlsl: Implement the countbits() intrinsic.
2025-09-22 11:26:42 +02:00
Victor Chiletto
ba4027f18e
vkd3d-shader/hlsl: Force default majority for resource formats.
2025-09-04 13:39:46 +02:00
Shaun Ren
1083b31dfd
vkd3d-shader/hlsl: Implement texCUBEbias().
2025-09-03 12:01:34 +02:00
Petrichor Park
d964d55b4a
vkd3d-shader/hlsl: Implement the frexp() intrinsic.
2025-08-21 15:29:27 +02:00
Henri Verbeet
e7be5aa9fd
vkd3d-shader/hlsl: Pass a vkd3d_shader_source_list pointer to hlsl_ctx_init().
...
Instead of storing the list inside struct hlsl_ctx. The source file
names in the list are used by the location information that the HLSL
frontend produces, and end up being referenced by the vsir program. If
we want the vsir program to be able to outlive the hlsl_ctx, its
location information can't reference data owned by the hlsl_ctx.
2025-08-07 20:33:24 +02:00
Henri Verbeet
7c37fc6a8b
vkd3d-shader: Introduce struct vkd3d_shader_source_list.
2025-08-07 20:33:24 +02:00
Shaun Ren
4bb880f9ed
vkd3d-shader/hlsl: Support interlocked operations on non-indexed groupshared variables.
2025-08-05 16:33:08 +02:00
Shaun Ren
8d0d8d106b
vkd3d-shader/hlsl: Support stores to raw groupshared variables.
2025-08-05 16:32:34 +02:00
Shaun Ren
3802344e97
vkd3d-shader/hlsl: Allocate groupshared registers.
2025-08-05 16:06:07 +02:00
Victor Chiletto
5dbf859029
vkd3d-shader/hlsl: Parse SRV structured buffers.
2025-08-05 14:25:50 +02:00
Shaun Ren
f3dec58423
vkd3d-shader/hlsl: Ignore the 'groupshared' modifier for non-compute shaders.
2025-06-24 14:54:25 +02:00
Shaun Ren
4ede2f1365
vkd3d-shader/hlsl: Allow memory barriers in SM4+ target profiles.
2025-06-24 14:51:34 +02:00
Nikolay Sivov
f135f7fe07
vkd3d-shader/hlsl: Add a stub for the noise() intrinsic.
...
This function is used in tx_1_0 code, but is also supported in
fx_2_0 and fx_4_0 expressions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-06-19 20:36:27 +02:00
Giovanni Mascellani
bda2be3423
vkd3d-shader/hlsl: Reject programs with group shared variables.
...
Currently the modifier is ignored and the program is miscompiled.
2025-06-05 15:50:04 +02:00
Elizabeth Figura
c1adf54a44
vkd3d-shader/hlsl: Forbid referring to typedefs with "struct".
2025-05-14 15:09:48 +02:00
Elizabeth Figura
5ad2e7ee6d
vkd3d-shader/hlsl: Fix an incorrect error message for referring to non-struct types with "struct".
...
We cannot be redefining struct types in this rule, only referring to already
defined types. Struct type definition is handled by named_struct_spec, which
complains if the type was defined at all, regardless of class.
2025-05-14 15:08:13 +02:00
Elizabeth Figura
a06b9f6646
vkd3d-shader/hlsl: Do not emit HLSL_OP1_ABS for unsigned types.
2025-05-14 14:55:59 +02:00