--
v3: vkd3d-shader/dxil: Read function bodies.
vkd3d-shader/dxil: Read numeric constants.
vkd3d-shader/dxil: Read global function declarations.
vkd3d-shader/dxil: Validate the module format version.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/259
--
v2: vkd3d-shader/dxil: Read function bodies.
vkd3d-shader/dxil: Read numeric constants.
vkd3d-shader/dxil: Read global function declarations.
vkd3d-shader/dxil: Validate the module format version.
vkd3d-shader/dxil: Read the value symbol table.
vkd3d-shader/dxil: Read the type table.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/259
On Tue Jul 4 13:08:35 2023 +0000, Henri Verbeet wrote:
> > The part that doesn't thrill me is the fact that DXGI still directly
> accesses the VkQueue object, which I tend to see as an internal
> implementation detail to vkd3d. On the other hand it's nice that we
> don't need new API from vkd3d (even if, in the future, we were to need
> something other than vkQueueSubmit() and vkQueuePresentKHR()).
> For what it's worth, it was a fairly explicit design decision early on
> to expose the underlying Vulkan objects for d3d12 devices and command
> queues, as well as to allow the creation of d3d12 resources on top of
> existing Vulkan images, for the purpose of interoperation with other
> Vulkan code. I.e., the idea is that it should be possible to integrate
> vkd3d into a larger Vulkan application to draw some parts using the
> d3d12 API, while everything else is drawn using Vulkan.
> The internal queueing of command queue operations on the vkd3d level is
> unfortunate in that regard; ideally we just wouldn't do that. This MR
> could probably do a better job of explaining why we need to do that in
> some cases, and what kind of command queue operation sequences could
> result in out-of-order presentation.
> If we're going to need to introduce a DXGI worker thread anyway, could
> we just make vkd3d_acquire_vk_queue() block until there are no longer
> any operations queued?
We already somewhat discussed that internally, but for the benefit of public archival the behavior of `vkd3d_acquire_vk_queue()` and `vkd3d_release_vk_queue()` was documented in https://gitlab.winehq.org/wine/vkd3d/-/commit/b2a1f6b5e4f59fbc7f91ada7e5656…. I'll implement the behavior recommended there in my next MR.
The reason why it was decided to recommend to explicitly synchronize with an `ID3D12Fence` instead of making `vkd3d_acquire_vk_queue()` block until the queue is empty is because it is believed that the application is better than vkd3d at knowing how long it really makes sense to wait before actually acquiring the queue. In other words, `vkd3d_acquire_vk_queue()` doesn't know which queued operations are really required to be serialized with the queue acquisition.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/3165#note_38301
This serie implements a more robust strategy when winedbg
attaches to process which tries to terminate.
This let --auto mode print some more information (and no longer
crash) in such situation.
Revamped also a bit information displayed in auto mode.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/3246
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54699
I added the complete `windows.networking.idl` file since it was small and in case it's needed for mingw build.
--
v4: windows.networking.hostname: Implement IHostName::get_RawName().
windows.networking.hostname: Implement IHostNameFactory::CreateHostName().
windows.networking.hostname/tests: Add IHostNameFactory::CreateHostName() tests.
windows.networking.hostname: Add IHostNameFactory stub interface.
windows.networking.hostname: Add stub DLL.
include: Add windows.networking.idl file.
include: Add windows.networking.connectivity.idl file.
include: Add support for BYTE IReference.
https://gitlab.winehq.org/wine/wine/-/merge_requests/3249
On Fri Jul 7 07:21:06 2023 +0000, Bernhard Kölbl wrote:
> You could also add tests like in media.speech, where you try loading the
> DLL via LoadLibraryW
Sorry, I should've checked that.
Fwiw if the module doesn't export anything in particular it should not really matter how it's named, the classes are registered with whatever module implements them and the code reads the module name from the registry.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/3189#note_38294