1b951c87f6
tests: Add more tests for broadcasts in function call args.
2023-02-20 21:59:51 +01:00
af65287423
vkd3d-shader/hlsl: Check for majority modifiers on non-matrices in apply_type_modifiers().
2023-02-20 21:59:42 +01:00
1ee7a4e82a
tests: Add more tests for majority modifier syntax.
2023-02-20 21:59:42 +01:00
1c29b45c1f
tests: Test macro expansion in pack_matrix pragmas.
2023-02-20 21:59:42 +01:00
e5b40092c2
vkd3d-shader/hlsl: Support all() intrinsic.
2023-02-20 21:59:37 +01:00
e7bc634307
vkd3d-shader/hlsl: Support reflect() intrinsic.
...
Tests authored by Giovanni.
2023-02-20 21:59:23 +01:00
7c3dadce6b
vkd3d-shader/hlsl: Write SM4 break instructions.
2023-02-15 21:53:21 +01:00
99acf5038e
vkd3d-shader/hlsl: Use mul only for two scalars for dot().
2023-02-15 21:53:15 +01:00
0e60f4cc69
vkd3d-shader/hlsl: Always set ctx->cur_function in the func_prototype_no_attrs rule.
...
Fixes: 4c46075d86
2023-02-14 21:52:59 +01:00
cd6e8b5540
vkd3d-shader/hlsl: Allow empty parameter lists to be specified as "(void)".
2023-02-14 21:52:57 +01:00
58445da64b
vkd3d-shader/hlsl: Allow the final expression in a for loop initializer to be omitted.
2023-02-13 22:16:56 +01:00
4b944517b7
vkd3d-shader/hlsl: Inline function calls.
2023-02-13 22:16:53 +01:00
6177cea31f
vkd3d-shader/hlsl: Emit a hlsl_fixme() for unhandled instruction types when writing bytecode.
...
This was originally left alone in order to allow functions without early return
to succeed, since in that case we would already emit the correct bytecode
despite not handling the HLSL_IR_JUMP_RETURN instruction.
Now that we lower return statements, however, any unhandled instructions are
either definitely going to result in invalid bytecode, or rare enough that it's
not worth returning success anyway.
2023-02-13 22:16:52 +01:00
8bdee6681b
vkd3d-shader/hlsl: Lower return statements.
2023-02-13 22:16:51 +01:00
bb41c3b5fe
vkd3d-shader/hlsl: Skip functions that don't have a body when looking for the entry point.
2023-02-13 22:16:48 +01:00
09c5ed27fe
tests: Avoid performing a multi-component UAV load in uav-out-param.shader_test.
...
It requires caps beyond shader model 5.0.
2023-02-13 22:16:46 +01:00
77d716c811
vkd3d-shader/hlsl: Add functions to the global list inside the func_prototype rule.
2023-02-07 22:15:06 +01:00
721c7aa22c
tests: Add more tests for function definitions.
2023-02-07 22:15:06 +01:00
68c232cfab
tests: Test entry point semantics on function declarations.
2023-01-31 22:27:02 +01:00
4954c36347
tests: Add more tests for early return from the entry point.
2023-01-31 22:27:02 +01:00
7460d7adc2
tests: Add some tests for early return from user-defined functions.
2023-01-31 22:27:02 +01:00
aa3badbd9d
vkd3d-shader/hlsl: Emit a hlsl_fixme() for HLSL_IR_CALL instructions.
...
Avoid outputting invalid shaders.
2023-01-31 22:27:00 +01:00
ec00782eae
vkd3d-shader/tests: Add some exp()/exp2() tests.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2023-01-26 21:52:29 +01:00
f33ca836d7
vkd3d-shader/hlsl: Make single-component swizzles retrieve a scalar.
2023-01-26 21:52:18 +01:00
edf86b2248
tests: Add tests for assignments to self with swizzles.
2023-01-26 21:52:18 +01:00