Henri Verbeet
f7662f9878
vkd3d-shader/sm1: Introduce a parser for the legacy D3D byte-code format.
...
This is largely derived from the parser in Wine/wined3d, as of wine-6.18.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-06 18:35:44 +02:00
Atharva Nimbalkar
0376a8b4ee
vkd3d-shader: Implement VKD3D_SHADER_TARGET_GLSL.
...
Signed-off-by: Atharva Nimbalkar <atharvakn@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 23:16:52 +02:00
Zebediah Figura
cdb9c5808e
build: Use dllimport/dllexport on Win32 targets.
...
Tested with x86_64-w64-mingw32-gcc.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-09 21:43:25 +02:00
Zebediah Figura
d27fee64ab
build: Make the default symbol visibility "hidden".
...
We tag far fewer symbols this way.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-09 21:43:22 +02:00
Conor McCarthy
be8f51666e
vkd3d-shader: Handle descriptor array dynamic indexing.
...
Signed-off-by: Conor McCarthy <cmccarthy@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-29 13:01:30 +02:00
Conor McCarthy
a97d090010
vkd3d-shader: Get descriptor info for descriptor arrays.
...
Signed-off-by: Conor McCarthy <cmccarthy@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-26 17:35:21 +02:00
Conor McCarthy
4b919a10ad
vkd3d-shader: Add shader component type double.
...
Based on a vkd3d-proton patch by Joshua Ashton.
Signed-off-by: Conor McCarthy <cmccarthy@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-19 12:14:20 +02:00
Zebediah Figura
1c2344818d
vkd3d-shader: Adjust the API for struct vkd3d_shader_macro.
...
To more closely match the behaviour of D3D_SHADER_MACRO.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-16 22:07:18 +02:00
Zebediah Figura
5d9398e10c
include: Clarify that struct vkd3d_shader_code is not null-terminated.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-16 22:07:16 +02:00
Zebediah Figura
cbe4a3adff
vkd3d-shader: Introduce struct vkd3d_shader_hlsl_source_info.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-28 15:00:20 +02:00
Zebediah Figura
f1cc186f18
vkd3d-shader: Introduce vkd3d_shader_preprocess().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-28 15:00:17 +02:00
Zebediah Figura
be0864f949
vkd3d-shader: Advertise support for compiling HLSL to DXBC_TPF.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-28 15:00:14 +02:00
Isabella Bosia
f494abde89
vkd3d-shader: Implement target type d3d asm.
...
Signed-off-by: Isabella Bosia <ibosia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-25 16:12:04 +02:00
Henri Verbeet
4fda96190b
vkd3d-shader: Invert the "FRIENDLY_NAMES" output formatting flag.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-21 19:16:15 +02:00
Henri Verbeet
7c64e827ca
vkd3d-shader: Invert the "NO_HEADER" output formatting flag.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-21 19:16:05 +02:00
Henri Verbeet
8cc0abfca0
vkd3d-shader: Rename the "SHOW_BYTE_OFFSET" output formatting flag to just "OFFSETS".
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-21 19:16:02 +02:00
Henri Verbeet
bc5be191d9
include: The vkd3d_shader_log_level enumeration describes the *minimum* severity.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-21 19:15:56 +02:00
Zebediah Figura
82c42588e7
vkd3d-shader: Separate the allocated and used mask in struct vkd3d_shader_signature_element.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-18 22:08:22 +02:00
Isabella Bosia
75f239dcbe
vkd3d-shader: Add formatting compiler options.
...
Signed-off-by: Isabella Bosia <ibosia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-07 21:01:07 +02:00
Isabella Bosia
f222f99011
vkd3d-shader: Implement VKD3D_SHADER_TARGET_SPIRV_TEXT.
...
Signed-off-by: Isabella Bosia <ibosia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-07 21:01:06 +02:00
Zebediah Figura
d8bea777a1
vkd3d-shader: Rename VKD3D_SHADER_MINIMUM_PRECISION_FLOAT_8_2 to VKD3D_SHADER_MINIMUM_PRECISION_FIXED_8_2.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-07 21:00:57 +02:00
Zebediah Figura
41c6cb59d9
include: Document vkd3d_shader_signature.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-04 21:07:52 +02:00
Zebediah Figura
b68247132e
include: Document vkd3d-shader function pointer types.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-04 21:07:18 +02:00
Zebediah Figura
cc0670e0be
include: Document vkd3d-shader shader signature functions.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-04 21:07:16 +02:00
Zebediah Figura
c3816fc4e9
include: Document struct vkd3d_shader_scan_descriptor_info.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-04 21:07:14 +02:00
Zebediah Figura
277e70d035
include: Document vkd3d-shader swizzles.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-04 21:07:13 +02:00
Zebediah Figura
67065e4366
include: Document vkd3d-shader root signature functions.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-03 18:24:38 +02:00
Zebediah Figura
fcee3bfa9a
include: Document vkd3d_shader_get_version().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-03 18:24:37 +02:00
Zebediah Figura
72984bddcd
include: Document struct vkd3d_shader_interface_info.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-02 16:22:58 +02:00
Zebediah Figura
e61242b626
include: Document vkd3d-shader compilation and scanning functions.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-02 16:22:56 +02:00
Zebediah Figura
139d979733
include: Document struct vkd3d_shader_compile_info and members.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-02 16:22:55 +02:00
Zebediah Figura
73f1adfd22
include: Add documentation for enum vkd3d_shader_structure_type.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-02 16:22:53 +02:00
Henri Verbeet
d2ffae5900
vkd3d-shader: Introduce API for descriptor array bindings.
...
We will need this for shader model 5.1 resource arrays. However, for the
time being any count other than '1' is unsupported.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 22:01:38 +02:00
Henri Verbeet
9efcf45d7a
vkd3d-shader: Change the memory layout of swizzles to allow for future swizzle components.
...
We may want to add e.g. VKD3D_SHADER_SWIZZLE_ONE and
VKD3D_SHADER_SWIZZLE_ZERO in the future.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 22:01:35 +02:00
Henri Verbeet
2dd0d207d5
vkd3d-shader: Introduce an enumeration for swizzle components.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 21:46:17 +02:00
Henri Verbeet
7bae1a606a
vkd3d-shader: Support register spaces for combined samplers.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-11 18:05:50 +02:00
Zebediah Figura
04605a341b
vkd3d-shader: Make VKD3D_SHADER_SWIZZLE more legible.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-11 18:05:05 +02:00
Henri Verbeet
c326d75c1d
vkd3d-shader: Introduce vkd3d_shader_get_supported_target_types().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-06 11:54:22 +02:00
Henri Verbeet
5f4bd618ed
vkd3d-shader: Introduce vkd3d_shader_get_supported_source_types().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-06 11:54:22 +02:00
Henri Verbeet
7dda2339a2
vkd3d-shader: Introduce vkd3d_shader_get_version().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-06 11:54:22 +02:00
Henri Verbeet
dae87cc1c0
vkd3d-shader: Merge the vkd3d_shader_descriptor_type and vkd3d_shader_descriptor_range_type enumerations.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-04 15:52:27 +02:00
Henri Verbeet
ffe0dca779
vkd3d-shader: Allow plain storage buffers to be used for buffer UAVs.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-04 15:52:23 +02:00
Henri Verbeet
1279d5df9e
vkd3d-shader: Report error messages from vkd3d_shader_serialize_root_signature().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-30 16:33:00 +02:00
Henri Verbeet
33eb944bf4
vkd3d-shader: Report error messages from vkd3d_shader_parse_root_signature().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-30 16:32:59 +02:00
Henri Verbeet
d135b4687b
vkd3d-shader: Report error messages from vkd3d_shader_parse_input_signature().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-30 16:32:57 +02:00
Henri Verbeet
11f82d985c
vkd3d-shader: Pass a vkd3d_shader_compile_info structure to vkd3d_shader_scan_dxbc().
...
In order to allow it to handle different source types.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-30 16:32:56 +02:00
Henri Verbeet
3b2fb3aba1
vkd3d-shader: Output a compiler error message if the DXBC size is invalid.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-23 19:43:52 +02:00
Henri Verbeet
4906bd40c6
vkd3d-shader: Add missing VKD3D_FORCE_32_BIT_ENUM enum elements.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-22 22:19:07 +02:00
Henri Verbeet
a196555513
vkd3d-shader: Rename the VKD3D_DUMMY_SAMPLER_INDEX macro to VKD3D_SHADER_DUMMY_SAMPLER_INDEX.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-22 22:19:05 +02:00
Henri Verbeet
23416913f4
vkd3d-shader: Rename the vkd3d_versioned_root_signature_desc structure.
...
To vkd3d_shader_versioned_root_signature_desc.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-22 22:19:03 +02:00