--
v3: d3d10/effect: Add 'ceil' instruction for expressions.
d3d10/effect: Add 'dot' instruction support for expressions.
d3d10/effect: Add trigonometric instructions support for expressions.
d3d10/effect: Add support for shift instructions.
d3d10/effect: Add 'or' instruction support for expressions.
d3d10/effect: Add more integer instructions for expressions.
d3d10/effect: Add signed integer compare instructions for expressions.
d3d10/effect: Implement instructions used for signed integer division.
https://gitlab.winehq.org/wine/wine/-/merge_requests/1684
--
v3: msvfw32: Use the debugstr_fourcc function instead of reimplementing it.
mscms: Use the debugstr_fourcc function instead of reimplementing it.
mciavi32: Use the debugstr_fourcc function instead of reimplementing it.
ddraw: Use the debugstr_fourcc function instead of reimplementing it.
comctl32: Use the debugstr_fourcc function instead of reimplementing it.
include: Introduce wine_dbgstr_fourcc and debugstr_fourcc.
https://gitlab.winehq.org/wine/wine/-/merge_requests/3994
--
v2: dmsynth: Create and register a fluid_sfont instance.
dmsynth: Create a fluid_synth instance on Open.
dmsynth: Simplify IDirectMusicSynth8_Open checks.
fluidsynth: Use Wine debugging facility for traces.
dmsynth: Import and use FluidSynth 2.3.3.
dmime/tests: Queue the message before calling SendPMsg twice.
https://gitlab.winehq.org/wine/wine/-/merge_requests/3996
As has been pointed out a couple of times, mainly by @zfigura, hlsl_type_get_regset() is not defined for structs. So it is responsibility of the programmer to ensure that the data type in question belongs to a single regset before calling that function.
Turns out that when we call this function we either have to handle the possibility of the type spanning across multiple regsets, or we want the regset of a single component or vector, so this MR replaces the calls to hlsl_type_get_regset() with either a for loop that goes through all the pertaining regsets, hlsl_type_get_component_offset(), or hlsl_type_get_regset().
hlsl_type_get_regset() is still needed in the implementation of these functions, so it is downgraded to a static function for hlsl.c instead of being completely removed.
The tests in 3/5 (structs with multiple register reservations) are to explain why it makes sense to iterate over the regsets in 4/5 even if we don't have a proper implementation for register reservations on structs that span across mutiple regsets yet.
--
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/342