--
v2: vkd3d-shader/hlsl: Get rid of the "intrinsic" field of struct hlsl_ir_function.
vkd3d-shader/hlsl: Forbid returning void expressions from void functions.
vkd3d-shader/hlsl: Generate IR for user-defined function calls.
vkd3d-shader/hlsl: Avoid assuming that expressions have at least one argument.
tests: Test specifying a UAV address as an in/out parameter to a function.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/47
This functions should also work with document fragments, in wine they only return NULL.
--
v5: mshtml: Implement HTMLDocument_get_body for document fragments.
mshtml: Implement get_all for document fragments.
mshtml/tests: Test for get_all and get_body in document fragments.
https://gitlab.winehq.org/wine/wine/-/merge_requests/1918
This patch series includes an implementation of the long-pending `transpose` intrinsic and the `smoothstep` intrinsic.
While implementing `smoothstep` I realized that some intrinsics have different rules for the allowed data types than expressions:
- Vectors and matrices at the same time are not allowed, regardless of their dimensions. Even if they have the same number of components.
- Any combination of matrices is always allowed, even those when no matrix fits inside another, e.g.:
`float2x3` is compatible with `float3x2`, resulting in `float2x2`.
The common data type is the min on each dimension.
This is the case for `max`, `pow`, `ldexp`, `clamp` and `smoothstep`; which suggest that it is the case for all intrinsics where the operation is applied element-wise. So this was corrected.
A minor fix in `pow`'s type conversion is also included.
--
v4: vkd3d-shader/hlsl: Use add_unary_arithmetic_expr() in intrinsic_pow().
vkd3d-shader/hlsl: Introduce elementwise_intrinsic_float_convert_args().
vkd3d-shader/hlsl: Convert elementwise intrinsics args to the proper common type.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/53
First part of v2 of !38, trying to follow the wide feedback provided.
Following patches in: https://gitlab.winehq.org/fcasas/vkd3d/-/tree/documentation
--
v3: vkd3d-shader/hlsl: Add field-level documentation to struct hlsl_src.
vkd3d-shader/hlsl: Add field-level documentation to struct hlsl_ir_node.
vkd3d-shader/hlsl: Add field-level documentation to struct hlsl_ctx.
vkd3d-shader/hlsl: Add field-level documentation to struct hlsl_ir_var.
vkd3d-shader/hlsl: Add field-level documentation to struct hlsl_struct_field.
vkd3d-shader/hlsl: Add field-level documentation to struct hlsl_type.
vkd3d-shader/hlsl: Rename hlsl_struct_field.modifiers to "storage_modifiers".
vkd3d-shader/hlsl: Rename hlsl_ir_var.modifiers to "storage_modifiers".
vkd3d-shader/hlsl: Rename HLSL_STORAGE_VOLATILE to HLSL_MODIFIER_VOLATILE.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/50
Since commit 182feddd4b02e83f3c69863bc2e6e63945eb2df1 DwmGetCompositionTimingInfo() returns success. Currently wine-gecko fails to display anything if prefix version is Win10. That is due to zero qpcVBlank field in DwmGetCompositionTimingInfo() output which is currently missing. Before the referenced commit it was handling the failure (see gfx/thebes/gfxWindowsPlatform.cpp:VBlankLoop() (line 2840 in the current wine-gecko snapshot from https://sourceforge.net/p/wine/wine-gecko/ci/master/tree/).
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/1928