Zebediah Figura
09b2e42e92
d3dcompiler: Verify a returned value against the function's type and cast it if necessary.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:20:25 +01:00
Zebediah Figura
60f78a1476
d3dcompiler: Check for implicit type compatibility in implicit_conversion().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:20:25 +01:00
Zebediah Figura
e597b9e555
d3dcompiler: Parse return statements without a value.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:20:25 +01:00
Zebediah Figura
8b08fec5e3
d3dcompiler/tests: Add some more tests for return statements.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:20:25 +01:00
Zebediah Figura
1cea81d104
d3dcompiler/tests: Add a test for the comma operator.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Zebediah Figura
8ce03e2055
d3dcompiler/tests: Port some tests to shader model 4.
...
In particular, port those for which there is an interesting difference in
code generation.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Zebediah Figura
6f80956146
d3dcompiler/tests: Rewrite to use a separate d3d9 device for each test.
...
This brings the d3dcompiler tests more in line with existing d3d9 tests, and
allows potentially running the tests in parallel.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Matteo Bruni
d09962a472
d3dcompiler: Get rid of now unused BWRITERVS_SWIZZLE_{SHIFT, MASK}.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-25 23:43:18 +01:00
Matteo Bruni
d4682017d6
d3dcompiler/tests: Make test_reflection_constant_buffer() work on d3d10.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-16 21:23:13 +01:00
Matteo Bruni
4e8ec8a6e0
d3dcompiler: Free variable definitions data on allocation errors.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-16 21:23:13 +01:00
Zebediah Figura
81a7da48b9
d3dcompiler: Get rid of the unused "subexpressions" field of struct hlsl_ir_expr.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-16 20:48:33 +01:00
Zebediah Figura
0778e81787
d3dcompiler: Parse the comma operator.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-16 20:48:30 +01:00
Zebediah Figura
efec4f90aa
d3dcompiler: Handle loops in free_instr().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-16 20:48:27 +01:00
Zebediah Figura
c5aa0feec7
d3dcompiler: Return an instruction list instead of a single instruction from nodes representing expressions.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-16 20:48:22 +01:00
Zebediah Figura
1aa2beab73
d3dcompiler: Dump loops.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 19:46:24 +01:00
Zebediah Figura
05182695f2
d3dcompiler: Use wine_dbg_printf() to dump HLSL IR.
...
So that we don't print function names.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 19:46:21 +01:00
Zebediah Figura
e6f89bcb04
d3dcompiler: Dump flattened IR more accurately.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 19:46:18 +01:00
Zebediah Figura
a43974a6d4
d3dcompiler: Store the swizzle unshifted.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 19:45:57 +01:00
Matteo Bruni
d367c9aeff
d3dcompiler/tests: Load the correct d3dcompiler DLL in the asm tests.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-03 21:40:59 +01:00
Matteo Bruni
20b52b61c6
d3dcompiler/tests: Load the correct d3dcompiler DLL in the HLSL tests.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-03 21:40:59 +01:00
Zebediah Figura
ae274b25e2
d3dcompiler/tests: Load d3dx9_36.dll dynamically.
...
Windows 7 Professional ships d3dcompiler_47 by default, but no version of d3dx9.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47894
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-03 20:58:18 +01:00
Matteo Bruni
276d970e07
d3dcompiler/tests: Fix parameter desc test on d3d10.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-03 21:27:14 +01:00
Sven Baars
e0143194c2
d3dcompiler/tests: Fix a copy-paste error.
...
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-27 22:02:59 +01:00
Sven Baars
a63a98c388
d3dcompiler/tests: Fix some d3dcompiler_47 test failures on Windows 8.
...
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-14 22:05:00 +01:00
Matteo Bruni
1559f6013c
d3d10/tests: Add reflection test.
...
Share and reuse most of the d3dcompiler test.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-14 21:05:59 +01:00
Matteo Bruni
6889a0c3a0
d3dcompiler/tests: Clean up test_reflection_desc_ps_output() a bit.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-14 21:05:48 +01:00
Connor McAdams
44e65ebd7c
d3dcompiler: Implement ID3D10ShaderReflectionConstantBuffer GetVariableByName() method.
...
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-14 21:05:44 +01:00
Connor McAdams
a812c1a5ef
d3dcompiler: Implement ID3D10ShaderReflectionConstantBuffer GetVariableByIndex() method.
...
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-14 21:05:42 +01:00
Connor McAdams
c232519076
d3dcompiler: Implement ID3D10ShaderReflectionVariable GetType() method.
...
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-14 21:05:40 +01:00
Connor McAdams
a3b6d5646d
d3dcompiler: Implement ID3D10ShaderReflectionType.
...
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-14 21:05:37 +01:00
Connor McAdams
98e240c6a6
d3dcompiler: Partially implement ID3D10ShaderReflectionVariable.
...
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-13 17:31:46 +01:00
Connor McAdams
e5b2ee6fd8
d3dcompiler: Implement d3d10 GetConstantBufferByName().
...
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-13 17:31:44 +01:00
Connor McAdams
13a5a3cadc
d3dcompiler: Implement d3d10 GetConstantBufferByIndex().
...
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-13 17:31:41 +01:00
Connor McAdams
14002a796d
d3dcompiler: Partially implement ID3D10ShaderReflectionConstantBuffer.
...
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-13 17:31:39 +01:00
Connor McAdams
6b6f8d5c2f
d3dcompiler: Implement d3d10 reflection GetResourceBindingDesc() method.
...
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-13 17:31:36 +01:00
Connor McAdams
d8ff297052
d3dcompiler: Implement d3d10 reflection Get{Input, Output}ParameterDesc() methods.
...
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-13 17:31:33 +01:00
Matteo Bruni
27bf34bb51
d3dcompiler/tests: Add a small test for MinPrecision.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 22:05:58 +01:00
Matteo Bruni
f14962e55d
d3dcompiler/tests: Add d3dcompiler_47 tests.
...
Share the code with the existing d3dcompiler_43 tests.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 22:05:58 +01:00
Matteo Bruni
9fd08dbff6
d3dcompiler: Fix a couple of failure return values in >= 46 D3DReflect().
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 21:39:40 +01:00
Matteo Bruni
d6c6fc455d
d3dcompiler: Initialize MinPrecision when it exists.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 21:39:40 +01:00
Matteo Bruni
4ed07d8586
d3dcompiler: Always expect D3D_COMPILER_VERSION to be defined.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 21:39:40 +01:00
Connor McAdams
5c708c857e
d3dcompiler: Implement d3d10 reflection GetDesc() method.
...
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-06 16:03:36 +01:00
Connor McAdams
0ffd0cab01
d3dcompiler: Init reflection data in D3D10ReflectShader().
...
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-06 16:03:34 +01:00
Connor McAdams
981403e50f
d3dcompiler: Move d3d10 reflection stubs into d3dcompiler.
...
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-06 16:03:31 +01:00
Zebediah Figura
bf31a900d1
d3dcompiler: Get rid of the "node" field from struct hlsl_ir_var.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-14 17:41:01 +02:00
Zebediah Figura
32fd9ff479
d3dcompiler: Get rid of the "node" field from struct hlsl_ir_function_decl.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-14 17:41:01 +02:00
Zebediah Figura
cf5ccf29a9
d3dcompiler: Introduce a new_binary_expr() helper.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-13 01:26:41 +02:00
Zebediah Figura
b899965615
d3dcompiler: Introduce a new_unary_expr() helper.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-13 01:26:41 +02:00
Zebediah Figura
b89f027bc1
d3dcompiler: Use new_cast() in implicit_conversion().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-13 01:26:41 +02:00
Zebediah Figura
fbc9ff506c
d3dcompiler: Parse initializer lists using a variable-size array.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-13 01:26:41 +02:00