Henri Verbeet
321154d25a
vkd3d-shader/spirv: Handle "LiteralString" operands.
2025-03-10 14:47:03 +01:00
Henri Verbeet
0e092aef70
vkd3d-shader/spirv: Handle "LiteralInteger" operands.
2025-03-10 14:47:03 +01:00
Henri Verbeet
8afeb13035
vkd3d-shader/spirv: Handle "IdResultType" operands.
2025-03-10 14:47:03 +01:00
Henri Verbeet
b9e78f2e2e
vkd3d-shader/spirv: Handle "IdResult" operands.
2025-03-10 14:47:03 +01:00
Henri Verbeet
e83f4f40f9
vkd3d-shader/spirv: Handle "IdRef" operands.
2025-03-10 14:47:03 +01:00
Henri Verbeet
bebc550f02
vkd3d-shader/spirv: Implement outputting opcode names.
2025-03-10 14:47:00 +01:00
Henri Verbeet
997f3f8266
vkd3d-shader/spirv: Implement outputting instruction offsets.
2025-03-10 14:45:06 +01:00
Giovanni Mascellani
8c785f1dc9
vkd3d-shader/spirv: Emit immediate words for unhandled instructions.
...
The assembler can parse these to reconstruct the original bytecode.
2025-03-10 14:45:06 +01:00
Nikolay Sivov
1417af2eab
vkd3d-shader/fx: Add support for parsing numeric states in fx_2_0 passes.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-03-06 17:21:10 +01:00
Nikolay Sivov
fb76e5daa2
vkd3d-shader/fx: Add support for parsing fx_2_0 parameters.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-03-06 17:21:10 +01:00
Henri Verbeet
36b8186021
vkd3d-shader/fx: Handle parser failures in fx_parse().
2025-03-06 17:19:28 +01:00
Henri Verbeet
a6fda3e65d
vkd3d-shader/fx: Output error messages for invalid sizes.
2025-03-06 17:19:28 +01:00
Elizabeth Figura
18ca7affad
vkd3d-shader/hlsl: Make min16uint into a first-class type.
...
And properly implement translation into some binary enumerations.
2025-03-06 17:15:15 +01:00
Elizabeth Figura
16be9181a0
vkd3d-shader/hlsl: Pass the correct type to base_type_get_semantic_equivalent().
2025-03-06 17:15:15 +01:00
Elizabeth Figura
3cf4a4e95e
vkd3d-shader/hlsl: Use common hlsl_type_is_integer() and hlsl_base_type_is_integer() helpers.
2025-03-06 17:15:15 +01:00
Elizabeth Figura
bd34ec1fb3
vkd3d-shader/hlsl: Emit the minimum-precision SFI0 flag.
2025-03-06 17:15:15 +01:00
Elizabeth Figura
6cdfe38319
vkd3d-shader/hlsl: Emit minimum-precision signatures.
2025-03-06 17:15:15 +01:00
Elizabeth Figura
c2ca6b6bdf
vkd3d-shader/hlsl: Emit the minimum-precision global flag when minimum-precision semantics are used.
...
There are other things we need to check, but this is a start.
2025-03-06 17:15:15 +01:00
Elizabeth Figura
055625448b
vkd3d-shader/hlsl: Add a hlsl_block_add_simple_load() helper.
2025-03-05 14:12:12 +01:00
Elizabeth Figura
d52df527ba
vkd3d-shader/hlsl: Add a hlsl_block_add_load_index() helper.
2025-03-05 14:12:12 +01:00
Elizabeth Figura
7b486fe239
vkd3d-shader/hlsl: Return an error expr from hlsl_add_load_component() on allocation failure.
2025-03-05 14:12:12 +01:00
Elizabeth Figura
009f5765df
vkd3d-shader/hlsl: Return void from hlsl_block_add_store_component().
2025-03-05 14:12:12 +01:00
Elizabeth Figura
9e3ac35669
vkd3d-shader/hlsl: Pass the target block to hlsl_new_store_component().
2025-03-05 14:12:12 +01:00
Henri Verbeet
5ab5a721a1
vkd3d-shader/spirv: Do not sign-extend *ptr in vkd3d_spirv_build_string().
...
"char" is (potentially) signed, so casting it to uint32_t will
sign-extend it. Because we use |= to assign it to "word", and don't
otherwise mask out the higher bits either, we effectively set subsequent
bytes in the same word to 0xff for input bytes > 0x7f. That potentially
includes the \0 terminator. For example, "é" (U+00e9) is "\xc3\xa9"
when encoded as UTF-8, and would get us 0xffffffc3 instead of
0x0000a9c3.
2025-03-05 14:10:58 +01:00
Nikolay Sivov
871c9c61a5
vkd3d-shader/fx: Fix const strings array types.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com >
2025-03-05 14:09:58 +01:00