Supersedes !482.
Instead of only storing the value that each variable's component has at
the moment of the instruction currently handled by copy-prop, we store
the trace of all the historic values with their timestamps, i.e. the
instruction index on which the value was stored.
This allow us to query the value that the variable's component had at the time of a swizzle's load instead of the swizzle instead, which also preempts copy-prop from getting stuck in an infinite loop, as which the added tests.
--
v3: vkd3d-shader/hlsl: Use values at the time of the swizzle's load in copy-propagation.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/487
---
I don't see a method to wait for a fence, at least not without having a
command queue. A suggestion I found online goes along the lines of:
if (fence->GetCompletedValue != expected)
{
HANDLE ev = CreateEvent(...);
fence->SetEventOnCompletion(expected, ev);
WaitForSingleObject(ev, INFINITE);
CloseHandle(ev);
}
Which I could write, but would be untested dead code as long as the
other method is a stub. So busy waiting and writing one fixme every time
we busy wait seems like a better choice for now.
--
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/488
Detecting the host layout languages from their Xkb identifiers, and introducing a new driver interface using the KBDTABLES structure to translate them to Win32.
--
v3: winewayland.drv: Translate Xkb keyboard layouts to KBDTABLES.
win32u: Allow KBDTABLES conversion from CTRL + ALT to WCHAR.
win32u: Force US layout in ToUnicode when CTRL is pressed.
win32u: Avoid accessing NULL key name string pointer.
win32u: Introduce KbdLayerDescriptor user driver entry.
winewayland.drv: Enumerate Xkb layouts and create matching HKL.
winewayland.drv: Handle and parse Xkb keymap events.
https://gitlab.winehq.org/wine/wine/-/merge_requests/4455
Fixes periodic crashes in PowerPoint 365
--
v3: d2d1: Acquire lock before attempt to draw to device context
d2d1: Add test for singlethreaded draw
d2d1: Add test for multithreaded draw
https://gitlab.winehq.org/wine/wine/-/merge_requests/4452
CW bug 22597
--
v2: d2d1: Optimise acquisition of the lock
d2d1: Acquire lock before attempt to draw to device context
d2d1: Add test for singlethreaded draw
d2d1: Add test for multithreaded draw
https://gitlab.winehq.org/wine/wine/-/merge_requests/4452