Commit graph

519 commits

Author SHA1 Message Date
Alexandre Julliard fecd22d2ae vkd3d: Import upstream release 1.12. 2024-05-30 19:54:06 +02:00
Nikolay Sivov 850660ada0 d3d10/tests: Add a test for effect compilation containing empty buffers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-03-28 19:49:37 +01:00
Nikolay Sivov 36a4e5c9bb d3d10: Use older compiler for D3D10CompileEffectFromMemory().
Compilation output from D3D10CompileEffectFromMemory() always
contains $Globals buffer, even if it's empty. That matches
behaviour of 33-39 compilers.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-03-28 19:49:35 +01:00
Nikolay Sivov 40afa8d937 d3d10/tests: Add a small effect compilation test.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-03-12 08:31:51 +01:00
Jacek Caban 92f9c58e6d d3d10/tests: Avoid implicit cast changing value. 2024-02-09 18:00:04 +01:00
Nikolay Sivov 68ab4c4849 d3d10/effect: Clarify constant buffer flags field meaning.
It makes more sense to have it matching fx_5_0 format, which
uses the same flag for TBUFFER case, and also keeps 'single' modifier in there.
This modifier is ignored on fx_4_x, so it's only needed to be implemented
in the compiler.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-02-01 22:14:19 +01:00
Nikolay Sivov 3724385c86 d3d10/effect: Use bitfields for numeric type descriptions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-01-26 17:54:33 +01:00
Alexandre Julliard acad49573a makefiles: Always use the global SOURCES variable for .c files. 2023-11-01 22:44:03 +01:00
Alexandre Julliard 7ccb5df0fc makefiles: Always use the global SOURCES variable for .rc files. 2023-11-01 22:43:56 +01:00
Alex Henrie beb1805ca0 d3d10: Use debugstr_fourcc instead of debugstr_an. 2023-10-17 20:18:17 +02:00
Nikolay Sivov fe63d304be d3d10/tests: Add a test for log2/log10/exp2 functions in expressions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-10-09 11:34:41 +02:00
Nikolay Sivov 41ab207c71 d3d10/effect: Add support for shift instructions. 2023-10-05 18:49:50 +02:00
Nikolay Sivov fcfe297211 d3d10/effect: Add support for 'or' instruction.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-10-04 18:16:08 +02:00
Nikolay Sivov 42a57b3e70 d3d10/effect: Add support for 'not' instruction.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-10-04 18:16:06 +02:00
Nikolay Sivov 2055f7e20b d3d10/effect: Add support for 'exp' instruction. 2023-10-04 18:16:05 +02:00
Nikolay Sivov 347ed9a82b d3d10/effect: Add support for 'log' instruction.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-10-04 18:16:04 +02:00
Nikolay Sivov 03e17a3572 d3d10/effect: Add support for 'rsq' instruction.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-10-04 18:16:02 +02:00
Nikolay Sivov f72bb1f687 d3d10/effect: Add support for 'sqrt' instruction.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-10-04 18:16:01 +02:00
Nikolay Sivov edbf2405fc d3d10/tests: Use vector helpers in more places.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-10-04 18:16:01 +02:00
Nikolay Sivov 03c7038713 d3d10/effect: Add support for 'imul' instruction.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-10-04 18:15:58 +02:00
Nikolay Sivov 488398982c d3d10/effect: Add support for 'dot' instruction.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-10-03 09:24:39 +02:00
Nikolay Sivov dc91367dcf d3d10/effect: Add support for 'floor' instruction.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-10-03 09:24:38 +02:00
Nikolay Sivov 2861ce933b d3d10/effect: Add support for 'ceil' instruction.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-10-03 09:24:36 +02:00
Nikolay Sivov 2043ffa083 d3d10/tests: Compact returned arrays checks.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-10-03 09:24:36 +02:00
Nikolay Sivov fdc0f37714 d3d10/effect: Add support for 'buge'/'bult' instructions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-10-03 09:24:34 +02:00
Nikolay Sivov 985bb4263e d3d10/tests: Test for correct return value.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-09-27 21:43:03 +02:00
Nikolay Sivov 8f6cf2d3c9 d3d10/tests: Add some tests for D3D10.1 blend state in effects.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-09-25 10:23:38 +02:00
Nikolay Sivov 6ce99d16a6 d3d10/effect: Add signed integer compare instructions for expressions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-09-22 10:38:31 +02:00
Nikolay Sivov d49a6ab0de d3d10/effect: Implement instructions used for signed integer division.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-09-22 10:38:29 +02:00
Nikolay Sivov 0fac6c11f2 d3d10/effect: Implement 'mov' opcode for expressions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-09-18 11:02:00 +02:00
Alistair Leslie-Hughes 0a2fca61ff d3d10: Remove DECLSPEC_HIDDEN usage. 2023-07-11 22:39:35 +02:00
Henri Verbeet 5ad68393ec d3d10: Implement parse_fx10_preshader() on top of vkd3d_shader_parse_dxbc(). 2023-04-24 16:33:03 +02:00
Henri Verbeet 93cc58d121 d3d10: Implement d3d10_effect_parse() on top of vkd3d_shader_parse_dxbc(). 2023-04-24 16:33:03 +02:00
Henri Verbeet 0c7313840c d3dcompiler: Use vkd3d_shader_serialize_dxbc() in d3dcompiler_get_blob_part(). 2023-04-18 10:18:48 +02:00
Henri Verbeet b8fe76a8b5 d3dcompiler: Store DXBC sections as vkd3d_shader_dxbc_section_desc structures. 2023-04-18 10:18:48 +02:00
Nikolay Sivov a98d9dd9e9 d3d10/tests: Add some tests for trigonometric functions. 2023-03-29 22:29:38 +02:00
Nikolay Sivov ec47f9855e d3d10/effect: Add support for 'iadd' instruction.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-03-29 22:29:38 +02:00
Nikolay Sivov a8c78c0e2d d3d10/effect: Add support for 'imin' instruction.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-03-29 22:29:38 +02:00
Nikolay Sivov 956541c9c8 d3d10/effect: Add support for umin/umax instructions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-03-29 22:29:38 +02:00
Nikolay Sivov 4700c17c61 d3d10/effect: Add support for asin/acos/atan instructions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-03-29 22:29:38 +02:00
Nikolay Sivov 8d00428e63 d3d10/effect: Handle division by zero in 'udiv'.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-03-29 22:29:38 +02:00
Nikolay Sivov a54f1726c6 d3d10/effect: Add support for 'movc' instruction. 2023-03-29 22:29:38 +02:00
Nikolay Sivov 19b799fd62 d3d10/effect: Add support for udiv instruction. 2023-03-20 17:11:25 +01:00
Nikolay Sivov c96c6b9826 d3d10/effect: Add support for imax instruction. 2023-03-20 17:11:24 +01:00
Nikolay Sivov 8e2412fcc3 d3d10/effect: Add support for ineg instruction. 2023-03-20 17:11:23 +01:00
Nikolay Sivov cbc2500638 d3d10/effect: Add support for itof instruction. 2023-03-20 17:11:21 +01:00
Nikolay Sivov 0fe562b4ae d3d10/effect: Add 'frc' instruction support for expressions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-12-03 00:05:17 +01:00
Nikolay Sivov c336ce73a9 d3d10/effect: Add 'rcp' instruction support for expressions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-12-03 00:05:17 +01:00
Nikolay Sivov 6cb65804a4 d3d10/effect: Add 'div' instruction support for expressions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-12-03 00:05:17 +01:00
Nikolay Sivov 08e8f284f5 d3d10/effect: Add 'ftob' instruction support for expressions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-12-03 00:05:17 +01:00