Henri Verbeet
8313225cc6
vkd3d-shader: Keep track of declared SPIR-V input components.
...
In particular, a shader may declare e.g. v6.x to refer to an output from the
previous stage, and v6.y to refer to a builtin, or the other way around. At
the same time, different hull shader phases may redeclare the same register.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-12 21:01:54 +01:00
Henri Verbeet
90216bd478
tests: Add tessellation shader tests to test_clip_distance().
...
Like the Wine d3d11 test it was originally ported from.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-12 21:01:52 +01:00
Henri Verbeet
3a710385f3
vkd3d-shader: Handle non-vec4 builtins in vkd3d_dxbc_compiler_emit_hull_shader_input_initialisation().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-12 21:01:50 +01:00
Zebediah Figura
3bf0e40b9d
vkd3d-shader: Use struct vkd3d_shader_location in struct hlsl_ctx.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-12 21:01:40 +01:00
Zebediah Figura
3a975c2215
vkd3d-shader: Replace struct source_location with struct vkd3d_shader_location.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-12 21:01:38 +01:00
Zebediah Figura
28b1d68ce3
vkd3d-shader: Separate hlsl_report_message() into helpers for individual log levels.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-12 21:01:36 +01:00
Zebediah Figura
df3773ff7e
vkd3d-shader: Use "hlsl_yy" as an API prefix for bison and flex definitions.
...
So as to differentiate their API from our internal functions.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-12 21:01:33 +01:00
Zebediah Figura
e3e0c26475
vkd3d-shader: Use hlsl_report_message() to report use of reserved keywords.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-12 21:01:31 +01:00
Zebediah Figura
c7d4acaf4b
vkd3d-shader: Make the HLSL compiler reëntrant.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-10 20:08:12 +01:00
Zebediah Figura
f1acb3d383
vkd3d-shader: Use struct source_location as the Bison location type.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-10 20:08:10 +01:00
Zebediah Figura
af47cc5b53
vkd3d-shader: Use a table to initialize predefined effect types.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-10 20:08:08 +01:00
Zebediah Figura
7400717282
vkd3d-shader: Move hlsl_ctx initialization and cleanup to hlsl_compile_shader().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-10 20:08:06 +01:00
Zebediah Figura
3854991154
vkd3d-shader: Move parse_* structure definitions to hlsl.y.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-10 20:08:04 +01:00
Zebediah Figura
16aceacc0c
vkd3d-shader: Implement global resource memory barriers.
...
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-02-04 22:32:42 +01:00
Zebediah Figura
c2c092b143
vkd3d-shader: Replace BOOL with bool.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 22:32:38 +01:00
Zebediah Figura
aa52cb10b4
vkd3d-shader: Return void from hlsl_pop_scope().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 22:32:36 +01:00
Zebediah Figura
db1765c283
vkd3d-shader: Rename debug_dump_*() to dump_*().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 22:32:33 +01:00
Zebediah Figura
7c5bd7c776
vkd3d-shader: Add a hlsl_ namespace prefix to common functions.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 22:32:31 +01:00
Zebediah Figura
0da1401d3d
vkd3d-shader: Move hlsl_message() and hlsl_report_message() to hlsl.c.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 22:32:28 +01:00
Henri Verbeet
0c73afd424
vkd3d-shader: Implement relative addressing of tessellation control shader inputs.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 22:27:57 +01:00
Henri Verbeet
88fd3b3e1b
tests: Add a test for relative addressing of tessellation control shader inputs.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 22:27:55 +01:00
Zebediah Figura
ab2e95a78c
vkd3d-shader: Move compatible_data_types() to hlsl.y.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-02 22:48:18 +01:00
Zebediah Figura
d8dd91e840
vkd3d-shader: Move add_expr() to hlsl.y.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-02 22:48:16 +01:00
Zebediah Figura
768eb86101
vkd3d-shader: Move add_implicit_conversion() to hlsl.y.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-02 22:48:13 +01:00
Zebediah Figura
60cde237c5
vkd3d-shader: Move add_assignment() to hlsl.y.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-02 22:48:08 +01:00