- Oct 10, 2022
-
-
- Sep 28, 2022
-
-
- Sep 27, 2022
-
-
The function has far too many arguments, including multiple different arguments with the same type. Use a structure for clarity and to avoid errors. Merge hlsl_new_sample_lod() into hlsl_new_resource_load() accordingly.
-
-
Synthesize the internal name from the template inside of this function.
-
-
vkd3d-shader does not consume only bytecode anymore.
-
-
This should silence warnings about some branches non returning any value without requiring additional "return 0" statement or similar. Also, in theory this might enable to compiler to optimize the program a little bit more, though that's unlikely to have any measurable effect.
-
- Sep 21, 2022
-
-
- Sep 19, 2022
-
-
-
Broken for me with "AMD Radeon RX 560 Series (RADV POLARIS11)" (1002:67ef) but works with llvmpipe; Mesa 22.2.0-rc3.
-
-
- Aug 23, 2022
-
-
Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
-
Also, TextureCube and TextureCubeArray don't support the offset argument, so this check is updated here too. Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
-
Also, TextureCube and TextureCubeArray don't support the offset argument, so this check is updated. Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
-
Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
-
HLSL_ARRAY_ELEMENTS_COUNT_IMPLICIT (zero) is used as a temporal value for elements_count for implicit size arrays. This value is replaced by the correct one after parsing the initializer. In case the implicit array is not initialized correctly, hlsl_error() is called but the array size is kept at 0. So the rest of the code must handle these cases. In shader model 5.1, unlike in 5.0, declaring a multi-dimensional object-type array with the last dimension implicit results in an error. This happens even in presence of an initializer. So, both gen_struct_fields() and declare_vars() first check if the shader model is 5.1, the array elements are objects, and if there is at least one implicit array size to handle the whole type as an unbounded resource array. Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
It is responsibility of the shader's programmer to ensure that object references can be solved statically. Resource arrays for ps_5_1 and vs_5_1 are an exception which is not properly handled yet. They probably deserve a different object type. Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
Otherwise we get false in implicit_compatible_data_types() when passing types that are equal but not convertible according to convertible_data_type(); e.g. getting: "Can't implicitly convert from Texture2D<float4> to Texture2D<float4>." Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
Signed-off-by:
Francisco Casas <fcasas@codeweavers.com>
-
- Aug 15, 2022
-
-
Don't assume that enums and uint32_t parameters are identical. Clang 16 changes the diagonstic for incompatible function pointer types from a warning into an error by default. This fixes the following error, when built (for aarch64, but probably also for other architectures) in MSVC mode: ../src/libs/vkd3d/libs/vkd3d-shader/spirv.c:1083:13: error: incompatible function pointer types passing 'uint32_t (struct vkd3d_spirv_builder *, uint32_t, SpvDim, uint32_t, uint32_t, uint32_t, uint32_t, SpvImageFormat)' (aka 'unsigned int (struct vkd3d_spirv_builder *, unsigned int, enum SpvDim_, unsigned int, unsigned int, unsigned int, unsigned int, enum SpvImageFormat_)') to parameter of type 'vkd3d_spirv_build7_pfn' (aka 'unsigned int (*)(struct vkd3d_spirv_builder *, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int)') [-Wincompatible-function-pointer-types] vkd3d_spirv_build_op_type_image); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../src/libs/vkd3d/libs/vkd3d-shader/spirv.c:612:68: note: passing argument to parameter 'build_pfn' here SpvOp op, const uint32_t *operands, vkd3d_spirv_build7_pfn build_pfn) ^ Signed-off-by:
Martin Storsjö <martin@martin.st>
-