Commit Graph

6084 Commits

Author SHA1 Message Date
Henri Verbeet
d24982c5f1 libs/vkd3d: Destroy Vulkan render passes and framebuffers on command allocator reset. 2016-10-10 17:25:36 +02:00
Henri Verbeet
3ba5fd949b libs/vkd3d: Store Vulkan render passes and framebuffers in the command allocator.
We should destroy these on resets, but command list resets don't need to wait
for command list execution to complete.
2016-10-10 17:25:31 +02:00
Józef Kucia
0c88b053da include: Fix alignment for INT64/UINT64 in 32-bit code. 2016-10-10 17:12:22 +02:00
Józef Kucia
b90676ac73 tests: Make number of ok() calls constant between test runs. 2016-10-10 11:22:50 +02:00
Józef Kucia
e84ca0af5d tests: Use InterlockedIncrement() for test counters.
This should be useful for multithreaded tests.
2016-10-10 11:22:50 +02:00
Józef Kucia
ed033b40d0 libs/vkd3d: Fix InterlockedIncrement() and InterlockedDecrement() signatures. 2016-10-10 11:22:50 +02:00
Józef Kucia
5f3d5a1263 tests: Include vkd3d_common.h in vkd3d_test.h. 2016-10-10 11:22:50 +02:00
Józef Kucia
eb05a388e1 include: Avoid using variable names starting with "__".
Names that begin with "__" are reserved.
2016-10-10 11:22:50 +02:00
Józef Kucia
a22b594c0a libs/vkd3d: Accept D3D12_ROOT_SIGNATURE_DESC directly only when all bits of "bytecode_length" are set. 2016-10-10 11:22:50 +02:00
Józef Kucia
f530155ff1 build: Add original copyright notice for Autoconf macros. 2016-10-10 11:22:50 +02:00
Józef Kucia
d7e9ceff28 build: Always quote macro arguments.
For consistency.
2016-10-10 11:22:50 +02:00
Józef Kucia
c107bebb77 build: Use "no" instead of "false" as value of MinGW configuration variables.
Mostly for consistency with AC_CHECK_PROG() call.
2016-10-10 11:22:50 +02:00
Józef Kucia
b614ec843b build: Print info about cross compilers. 2016-10-10 11:22:50 +02:00
Józef Kucia
10bfe2d675 build: Mark CROSSCC32 and CROSSCC64 as precious variables. 2016-10-10 11:22:50 +02:00
Józef Kucia
6523844af8 build: Check for cross compilers when checking for other programs. 2016-10-10 11:22:50 +02:00
Józef Kucia
59d466af2d libs/vkd3d: Use PRIx64 to print 64-bit integers. 2016-10-10 11:22:50 +02:00
Józef Kucia
6330c9f46a tests: Properly print 64-bit unsigned integers.
Use PRIu64 since we use C99.
2016-10-10 11:22:50 +02:00
Józef Kucia
6dcd930408 tests: Add multithreaded fence wait test. 2016-10-08 14:31:57 +02:00
Józef Kucia
4153810c00 libs/vkd3d: Partially implement d3d12_command_list_CopyTextureRegion(). 2016-10-08 14:31:57 +02:00
Józef Kucia
99efb9abe3 libs/vkd3d: Get rid of vk_format_from_dxgi_format().
Use vkd3d_get_format() instead.
2016-10-08 14:31:57 +02:00
Józef Kucia
ab883caaff libs/vkd3d: Introduce vkd3d_format. 2016-10-08 14:31:57 +02:00
Józef Kucia
9620873b55 tests: Add test for signalling fences on GPU. 2016-10-08 14:31:57 +02:00
Józef Kucia
3742d2381f tests: Use single shared implementation of wait_queue_idle(). 2016-10-08 14:31:57 +02:00
Józef Kucia
b112ec1942 libs/vkd3d: Implement d3d12_command_queue_Signal(). 2016-10-08 14:31:57 +02:00
Józef Kucia
2a7b614278 libs/vkd3d: Wait for GPU fences in worker thread.
This could be implemented without a worker thread, if event objects
would be tightly coupled with ID3D12Fences.
2016-10-08 14:31:57 +02:00
Józef Kucia
2f76260857 libs/vkd3d: Create fence worker thread per device. 2016-10-08 14:31:57 +02:00
Józef Kucia
858e0c79f1 include: Add public header for libvkd3d-utils. 2016-10-07 13:26:39 +02:00
Józef Kucia
c7d123b122 libs/vkd3d: Move event objects implementation to libvkd3d-utils.
The libvkd3d is not the best place for event objects implementation.
2016-10-07 13:26:39 +02:00
Józef Kucia
0c1432e671 libs/vkd3d: Move D3D12CreateDevice() to libvkd3d-utils. 2016-10-07 13:26:39 +02:00
Józef Kucia
ef6a3d78a2 libs/vkd3d: Pass signal event function pointer to vkd3d_create_device(). 2016-10-07 13:26:39 +02:00
Józef Kucia
544c2668ca libs/vkd3d: Introduce vkd3d_create_device().
We need to pass additional parameters to libvkd3d during initialization.
2016-10-07 13:26:39 +02:00
Józef Kucia
12ea3309f0 libs/vkd3d-utils: Add library. 2016-10-07 13:26:39 +02:00
Józef Kucia
49cac8005c libs/vkd3d-common: Add convenience library for shared code. 2016-10-07 13:26:39 +02:00
Józef Kucia
c558118f70 libs/vkd3d: Re-use vkd3d_array_reserve() in d3d12_fence_SetEventOnCompletion(). 2016-10-05 19:01:57 +02:00
Józef Kucia
b224b6372c libs/vkd3d: Fix ID3D12Device reference count leak in d3d12_command_list_init(). 2016-10-05 18:40:25 +02:00
Józef Kucia
a763bef615 libs/vkd3d: Do not leak "passes". 2016-10-05 18:40:25 +02:00
Józef Kucia
1cabd851b8 libs/vkd3d: Do not leak "framebuffers". 2016-10-05 18:40:25 +02:00
Henri Verbeet
3fe56457f9 libs/vkd3d: Set the initial pipeline state on command list creation/reset. 2016-10-05 17:53:52 +02:00
Henri Verbeet
4c517454b6 libs/vkd3d: Debug output should go to stderr. 2016-10-05 17:53:36 +02:00
Henri Verbeet
b7d594349f libs/vkd3d: Delay destroying framebuffers until the command list is destroyed.
Like render passes, these should only be destroyed after all submitted
commands referring to them have completed execution.
2016-10-05 17:53:19 +02:00
Henri Verbeet
fb6071d108 libs/vkd3d: Delay destroying render passes until the command list is destroyed.
Render passes should only be destroyed after all submitted commands referring
to them have completed execution.
2016-10-05 17:52:45 +02:00
Józef Kucia
ee3c147f82 tests: Add test for signalling fences on CPU. 2016-10-05 15:56:27 +02:00
Józef Kucia
8ab2ebdd22 libs/vkd3d: Implement d3d12_fence_SetEventOnCompletion(). 2016-10-05 15:56:27 +02:00
Józef Kucia
733f720ee4 libs/vkd3d: Add simple replacement for event objects.
This naming convention for exported functions is used to be consistent
with other D3D12* functions().
2016-10-05 15:56:27 +02:00
Józef Kucia
a5e13cf53e libs/vkd3d: Implement d3d12_fence_Signal(). 2016-10-05 15:56:27 +02:00
Józef Kucia
da02d21e8e build: Check for pthreads. 2016-10-05 15:56:27 +02:00
Józef Kucia
8e2d4dc70f libs/vkd3d: Implement d3d12_command_list_CopyBufferRegion(). 2016-10-05 11:34:07 +02:00
Józef Kucia
663f2b4ae1 build: Require MinGW-w64 for crossbuilds.
Since dc7504c7fc we require "-municode"
support from cross compilers. Older MinGW32 doesn't support this option.
2016-10-05 11:34:07 +02:00
Henri Verbeet
42c1e0c0fb libs/vkd3d: Implement d3d12_command_list_RSSetScissorRects(). 2016-09-30 13:35:07 +02:00
Henri Verbeet
c7f6dc53b3 libs/vkd3d: Implement d3d12_command_list_RSSetViewports(). 2016-09-30 13:34:50 +02:00