On Mon, 10 Jan 2022 at 15:02, Conor McCarthy cmccarthy@codeweavers.com wrote:
diff --git a/tests/d3d12_crosstest.h b/tests/d3d12_crosstest.h index 0b77bdee..557d0430 100644 --- a/tests/d3d12_crosstest.h +++ b/tests/d3d12_crosstest.h @@ -226,6 +226,15 @@ static HRESULT wait_for_fence(ID3D12Fence *fence, uint64_t value) return ret == WAIT_OBJECT_0 ? S_OK : E_FAIL; }
+static HRESULT wait_for_fence_no_event(ID3D12Fence *fence, uint64_t value) +{
- if (ID3D12Fence_GetCompletedValue(fence) >= value)
return S_OK;
- /* This is defined to block on the value with infinite timeout. */
- return ID3D12Fence_SetEventOnCompletion(fence, value, NULL);
+}
static void wait_queue_idle_(unsigned int line, ID3D12Device *device, ID3D12CommandQueue *queue) { ID3D12Fence *fence; @@ -243,6 +252,23 @@ static void wait_queue_idle_(unsigned int line, ID3D12Device *device, ID3D12Comm ID3D12Fence_Release(fence); }
+static void wait_queue_idle_no_event_(unsigned int line, ID3D12Device *device, ID3D12CommandQueue *queue) +{
- ID3D12Fence *fence;
- HRESULT hr;
- hr = ID3D12Device_CreateFence(device, 0, D3D12_FENCE_FLAG_NONE,
&IID_ID3D12Fence, (void **)&fence);
- assert_that_(line)(hr == S_OK, "Failed to create fence, hr %#x.\n", hr);
- hr = ID3D12CommandQueue_Signal(queue, fence, 1);
- assert_that_(line)(hr == S_OK, "Failed to signal fence, hr %#x.\n", hr);
- hr = wait_for_fence_no_event(fence, 1);
- assert_that_(line)(hr == S_OK, "Failed to wait for fence, hr %#x.\n", hr);
- ID3D12Fence_Release(fence);
+}
static bool use_warp_device; static unsigned int use_adapter_idx;
This introduces build warnings. E.g.:
In file included from <vkd3d>/tests/d3d12_invalid_usage.c:19: <vkd3d>/tests/d3d12_crosstest.h:255:13: warning: ‘wait_queue_idle_no_event_’ defined but not used [-Wunused-function]