Commit Graph

7728 Commits

Author SHA1 Message Date
Conor McCarthy
c3110d2f94 vkd3d-shader/dxil: Check the destination value is invalid after calling a void function handler. 2025-06-19 20:45:28 +02:00
Conor McCarthy
a410c448ce vkd3d-shader/dxil: Validate the function return type after calling the handler.
The handler writes the destination value.
2025-06-19 20:44:54 +02:00
Nikolay Sivov
f135f7fe07 vkd3d-shader/hlsl: Add a stub for the noise() intrinsic.
This function is used in tx_1_0 code, but is also supported in
fx_2_0 and fx_4_0 expressions.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2025-06-19 20:36:27 +02:00
Giovanni Mascellani
93e1a8c784 vkd3d-shader/ir: Lower tpf SINCOS to the new COS and SIN instructions. 2025-06-19 20:33:09 +02:00
Giovanni Mascellani
37c2f709d1 vkd3d-shader/ir: Lower d3dbc SINCOS to the new COS and SIN instructions. 2025-06-19 20:32:55 +02:00
Giovanni Mascellani
6f092fb84a vkd3d-shader/ir: Introduce opcode SIN.
It is meant to compute sine.
2025-06-19 20:32:50 +02:00
Giovanni Mascellani
322f2e5496 vkd3d-shader/ir: Introduce opcode COS.
It is meant to compute cosine, and gradually replace SINCOS, at
least from a certain point in the pipeline on.
2025-06-19 20:32:41 +02:00
Giovanni Mascellani
b7fbd3c0f0 vkd3d-shader/ir: Validate data types for SIGNNEG source modifiers. 2025-06-19 20:11:41 +02:00
Giovanni Mascellani
3689d3076c vkd3d-shader/ir: Validate data types for SIGN source modifiers. 2025-06-19 20:10:21 +02:00
Giovanni Mascellani
e1ca552173 vkd3d-shader/ir: Validate data types for BIASNEG source modifiers. 2025-06-19 20:08:52 +02:00
Giovanni Mascellani
b2e1c3b90a vkd3d-shader/ir: Validate data types for BIAS source modifiers. 2025-06-19 20:06:35 +02:00
Giovanni Mascellani
eb3383b04e vkd3d-shader/ir: Validate data types for NEG source modifiers. 2025-06-19 20:03:17 +02:00
Giovanni Mascellani
46fac7f264 tests: Add a test for the partial precision destination modifier. 2025-06-19 19:48:56 +02:00
Giovanni Mascellani
4da83fe83b vkd3d-shader/ir: Validate ATAN instructions. 2025-06-19 19:28:42 +02:00
Giovanni Mascellani
813021e60b vkd3d-shader/ir: Validate ASIN instructions. 2025-06-19 19:28:42 +02:00
Giovanni Mascellani
16e142465c vkd3d-shader/ir: Validate AND instructions. 2025-06-19 19:28:41 +02:00
Giovanni Mascellani
0edd654c9e vkd3d-shader/ir: Validate ADD instructions. 2025-06-19 19:24:36 +02:00
Giovanni Mascellani
475e16b87f vkd3d-shader/ir: Validate ACOS instructions. 2025-06-19 19:24:36 +02:00
Giovanni Mascellani
65e896fd60 vkd3d-shader/ir: Validate ABS instructions. 2025-06-19 19:24:06 +02:00
Henri Verbeet
5911e410a8 demos/teapot: Add a tessellation demo. 2025-06-18 15:51:11 +02:00
Henri Verbeet
d572f4ac1f vkd3d: Use the DXBC checksum to construct a shader source name. 2025-06-18 15:50:18 +02:00
Henri Verbeet
cef3e07e3d vkd3d-shader/spirv: Emit an OpSource instruction with the source name. 2025-06-18 15:50:18 +02:00
Giovanni Mascellani
8b78747629 vkd3d-shader/dxil: Emit 16-bit UNDEFINED and INVALID values as minimum precision registers. 2025-06-18 15:48:55 +02:00
Giovanni Mascellani
b05153e6f9 vkd3d-shader/dxil: Emit 16-bit GROUPSHAREDMEM values as minimum precision registers. 2025-06-18 15:48:55 +02:00
Giovanni Mascellani
39603f4bc2 vkd3d-shader/dxil: Emit 16-bit structured TGSMs as minimum precision. 2025-06-18 15:48:55 +02:00