Conor McCarthy
99924d913b
vkd3d-shader/spirv: Support 64-bit sources in spirv_compiler_emit_int_div().
2024-01-02 23:03:05 +01:00
Conor McCarthy
13459a55f1
vkd3d-shader/spirv: Introduce a UINT64 component type.
2024-01-02 23:03:04 +01:00
Conor McCarthy
fe44873979
vkd3d-shader/spirv: Introduce a data_type_is_64_bit() helper function.
2024-01-02 23:03:03 +01:00
Conor McCarthy
511c66d595
vkd3d-shader/spirv: Use data_type_is_integer() in spirv_compiler_emit_neg().
2024-01-02 23:03:02 +01:00
Henri Verbeet
f96a791807
vkd3d-shader/ir: Pass a uint32_t swizzle to vkd3d_swizzle_get_component64().
2023-12-14 23:19:51 +01:00
Henri Verbeet
8a1de71fb1
vkd3d-shader/ir: Pass a uint32_t swizzle to vkd3d_swizzle_get_component().
2023-12-14 23:19:49 +01:00
Henri Verbeet
21491d1bbb
vkd3d-shader/ir: Pass a uint32_t write mask to vkd3d_write_mask_32_from_64().
2023-12-13 22:33:07 +01:00
Henri Verbeet
713adaa56a
vkd3d-shader/ir: Pass a uint32_t write mask to vkd3d_write_mask_component_count().
2023-12-13 22:33:04 +01:00
Henri Verbeet
e1aa12f94b
vkd3d-shader/ir: Pass a uint32_t write mask to vkd3d_write_mask_get_component_idx().
2023-12-13 22:33:03 +01:00
Giovanni Mascellani
ec4986e9e2
vkd3d-shader/spirv: Honor force_validation after emitting SPIR-V code.
2023-12-13 22:32:25 +01:00
Conor McCarthy
cdb9eecfd1
vkd3d-shader/spirv: Introduce a compiler feature flag for int64 capability.
2023-12-12 22:50:53 +01:00
Conor McCarthy
0610867334
vkd3d-shader/spirv: Emit an error if 64-bit integers are used.
2023-12-12 22:50:48 +01:00
Conor McCarthy
1929432559
vkd3d-shader: Introduce an instruction flag to suppress masking of bitwise shift counts.
...
DXIL does not use implicit masking of shift counts.
2023-12-12 22:50:46 +01:00
Conor McCarthy
2037daae32
vkd3d-shader/spirv: Bitcast if necessary in the spirv_compiler_emit_mov() general implementation.
...
In SM 6, this is needed when storing an asfloat() or asuint() result in
an indexable temp, because dxc performs the bitcast by casting the
destination pointer.
2023-12-11 23:18:52 +01:00
Zebediah Figura
66cb2815f0
vkd3d-shader/spirv: Declare I/O registers from the signature.
...
Instead of parsing DCL instructions.
This allows sm1 to work without further effort, and simplifies sm6 code.
2023-12-11 23:18:44 +01:00
Zebediah Figura
8876030590
vkd3d-shader/spirv: Do not use the output_info array for patch constants.
2023-12-11 23:18:40 +01:00
Conor McCarthy
cb88844a3d
vkd3d-shader: Add a register index to struct vkd3d_shader_immediate_constant_buffer.
2023-12-07 21:56:47 +01:00
Conor McCarthy
ef940cb778
vkd3d-shader/spirv: Support declared component type and count in immediate constant buffers.
2023-12-07 21:56:45 +01:00
Conor McCarthy
16cb6fdbad
vkd3d-shader/spirv: Support constant initialisers in indexable temps.
2023-12-07 21:56:44 +01:00
Conor McCarthy
69c3946c85
vkd3d-shader/spirv: Support declared component type and count in indexable temps.
2023-12-07 21:56:41 +01:00
Henri Verbeet
0c33f82f72
Release 1.10.
2023-12-06 15:31:21 +01:00
Conor McCarthy
9fcc904834
vkd3d-shader/spirv: Always emit clip/cull builtins as an array.
...
Clip/cull distance can appear as input in pixel shaders, and the
array size must not be forced to zero.
2023-12-06 15:31:20 +01:00
Conor McCarthy
b4d03c0221
vkd3d-shader/spirv: Do not emit a fixme for SV_TARGET in vkd3d_get_spirv_builtin().
2023-12-04 22:22:55 +01:00
Conor McCarthy
f11e1461aa
vkd3d-shader/spirv: Do not emit a fixme for SV_TARGET in get_spirv_builtin_for_sysval().
2023-12-04 22:22:54 +01:00
Conor McCarthy
eb05e434ff
vkd3d-shader/dxil: Implement the DXIL LOAD instruction.
2023-11-22 22:07:59 +01:00