Zebediah Figura
7e7a6d3691
vkd3d-shader/hlsl: Pass a hlsl_block pointer to hlsl_add_conditional().
2023-07-24 22:41:15 +02:00
Zebediah Figura
80b9f52010
vkd3d-shader/hlsl: Use a hlsl_block to build replacement instructions in lower_discard_neg().
2023-07-24 22:41:14 +02:00
Zebediah Figura
3a07df8476
vkd3d-shader/hlsl: Use a hlsl_block to build replacement instructions in lower_float_modulus().
2023-07-24 22:41:13 +02:00
Zebediah Figura
0dee96ead6
vkd3d-shader/hlsl: Use a hlsl_block to build replacement instructions in lower_int_modulus().
2023-07-24 22:41:12 +02:00
Nikolay Sivov
bd3d4a6c06
vkd3d-shader: Add compiler option to specify matrix majority.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-07-24 22:41:09 +02:00
Zebediah Figura
d52eb8595f
vkd3d-shader/hlsl: Use a hlsl_block to build replacement instructions in lower_int_division().
2023-07-20 22:33:01 +02:00
Zebediah Figura
cdabe172cb
vkd3d-shader/hlsl: Return a hlsl_block from the "declaration" and "struct_declaration" rules.
2023-07-20 22:33:00 +02:00
Zebediah Figura
54bd6f7b4b
vkd3d-shader/hlsl: Return a hlsl_block from the "declaration_statement" rule.
2023-07-20 22:32:59 +02:00
Zebediah Figura
77e1c5893e
vkd3d-shader/hlsl: Return a hlsl_block from the "primary_expr" rule.
2023-07-20 22:32:57 +02:00
Conor McCarthy
c0a2bb1095
vkd3d-shader/dxil: Emit undefined constants.
2023-07-20 22:32:53 +02:00
Conor McCarthy
402c93fa68
vkd3d-shader/spirv: Introduce an undefined register type.
2023-07-20 22:32:52 +02:00
Conor McCarthy
3e553aaaa7
vkd3d-shader/dxil: Emit the shader instructions.
...
Sufficient for compiling a no-op pixel shader.
2023-07-20 22:32:51 +02:00
Conor McCarthy
f26d47585f
vkd3d-shader/spirv: Do not normalise Shader Model 6 shaders.
2023-07-20 22:32:50 +02:00
Conor McCarthy
8fe6d2eeac
vkd3d-shader/dxil: Return an error from sm6_parser_globals_init() on invalid operand count.
2023-07-20 22:32:48 +02:00
Zebediah Figura
e0e261eac3
vkd3d-shader/spirv: Emit variables for flat constant buffers.
2023-07-17 22:56:47 +02:00
Zebediah Figura
25cf6a720b
vkd3d-shader/ir: Normalise sm1-style constants.
2023-07-17 22:56:45 +02:00
Zebediah Figura
e9fb067d4c
vkd3d-shader/ir: Move normalization code from spirv.c to ir.c.
...
It is not spirv-specific and will (presumably) be used for GLSL as well.
2023-07-17 22:56:43 +02:00
Zebediah Figura
d077562f79
vkd3d-shader/d3dbc: Scan descriptors for constant register sets.
2023-07-17 22:56:39 +02:00
Zebediah Figura
44bf5556ae
vkd3d-shader/hlsl: Free the constant defs array in hlsl_ctx_cleanup().
...
Spotted by Francisco Casas.
2023-07-17 22:56:19 +02:00
Nikolay Sivov
63631a8fd4
vkd3d-shader/tpf: Support some of the UAV types when writing RDEF records.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-07-17 22:56:05 +02:00
Francisco Casas
3bafd036bb
vkd3d-shader/hlsl: Don't allocate all texture registers for synthetic separated samplers.
2023-07-17 22:55:53 +02:00
Zebediah Figura
a55973d695
vkd3d-shader/hlsl: Lower combined samplers to separate sampler and texture objects for SM4.
...
Co-authored-by: Francisco Casas <fcasas@codeweavers.com>
2023-07-17 22:55:51 +02:00
Francisco Casas
15ea5ff9db
vkd3d-shader/hlsl: Separate tracking of sampler_dim and usage for object components.
2023-07-17 22:55:48 +02:00
Francisco Casas
c4f074d25d
vkd3d-shader/hlsl: Introduce hlsl_new_synthetic_var_named().
2023-07-17 22:55:46 +02:00
Francisco Casas
866c5d9531
vkd3d-shader/hlsl: Check is_uniform instead of HLSL_STORAGE_UNIFORM when validating object refs.
...
We are using the hlsl_ir_var.is_uniform flag to indicate when an object
is a uniform copy created from a variable with the HLSL_STORAGE_UNIFORM
modifier.
We should be checking for this instead of the HLSL_STORAGE_UNIFORM flag
which is also set to 1 for the original variables, and there should be
no reason to use this flag instead of "is_uniform" after the uniform
copies and combined/separated samplers are created.
2023-07-17 22:55:43 +02:00