From: Giovanni Mascellani gmascellani@codeweavers.com
This failures are observed to happen on llvmpipe. --- tests/d3d12.c | 12 ++++++++++++ 1 file changed, 12 insertions(+)
diff --git a/tests/d3d12.c b/tests/d3d12.c index b8d20a581..729a971ed 100644 --- a/tests/d3d12.c +++ b/tests/d3d12.c @@ -19216,6 +19216,12 @@ static void test_descriptors_visibility(void) hr = create_root_signature(device, &root_signature_desc, &context.root_signature); ok(SUCCEEDED(hr), "Failed to create root signature, hr %#x.\n", hr);
+ if (FAILED(hr)) + { + destroy_test_context(&context); + return; + } + context.pipeline_state = create_pipeline_state(device, context.root_signature, context.render_target_desc.Format, &vs, &ps, NULL); @@ -20860,6 +20866,12 @@ static void test_depth_stencil_sampling(void) hr = create_root_signature(device, &root_signature_desc, &context.root_signature); ok(SUCCEEDED(hr), "Failed to create root signature, hr %#x.\n", hr);
+ if (FAILED(hr)) + { + destroy_test_context(&context); + return; + } + pso_compare = create_pipeline_state(device, context.root_signature, context.render_target_desc.Format, NULL, &ps_compare, NULL); pso_depth = create_pipeline_state(device,
From: Giovanni Mascellani gmascellani@codeweavers.com
--- tests/d3d12.c | 14 ++++++++++++++ tests/d3d12_crosstest.h | 9 +++++++++ 2 files changed, 23 insertions(+)
diff --git a/tests/d3d12.c b/tests/d3d12.c index 729a971ed..d87ace5a8 100644 --- a/tests/d3d12.c +++ b/tests/d3d12.c @@ -19586,6 +19586,13 @@ static void test_null_srv(void) queue = context.queue; device = context.device;
+ if (is_llvmpipe_device(device)) + { + skip("Test crashes on llvmpipe, skipping.\n"); + destroy_test_context(&context); + return; + } + context.root_signature = create_texture_root_signature(context.device, D3D12_SHADER_VISIBILITY_PIXEL, 4, 0);
@@ -19801,6 +19808,13 @@ static void test_null_uav(void) command_list = context.list; queue = context.queue;
+ if (is_llvmpipe_device(device)) + { + skip("Test crashes on llvmpipe, skipping.\n"); + destroy_test_context(&context); + return; + } + descriptor_ranges[0].RangeType = D3D12_DESCRIPTOR_RANGE_TYPE_UAV; descriptor_ranges[0].NumDescriptors = 1; descriptor_ranges[0].BaseShaderRegister = 1; diff --git a/tests/d3d12_crosstest.h b/tests/d3d12_crosstest.h index 6c0a4ef12..69ec69bf7 100644 --- a/tests/d3d12_crosstest.h +++ b/tests/d3d12_crosstest.h @@ -638,6 +638,7 @@ static inline bool is_mesa_device(ID3D12Device *device)
get_driver_properties(device, &properties); return properties.driverID == VK_DRIVER_ID_MESA_RADV_KHR + || properties.driverID == VK_DRIVER_ID_MESA_LLVMPIPE || properties.driverID == VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA_KHR; }
@@ -649,6 +650,14 @@ static inline bool is_mesa_intel_device(ID3D12Device *device) return properties.driverID == VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA_KHR; }
+static inline bool is_llvmpipe_device(ID3D12Device *device) +{ + VkPhysicalDeviceDriverPropertiesKHR properties; + + get_driver_properties(device, &properties); + return properties.driverID == VK_DRIVER_ID_MESA_LLVMPIPE; +} + static inline bool is_nvidia_device(ID3D12Device *device) { VkPhysicalDeviceDriverPropertiesKHR properties;
From: Giovanni Mascellani gmascellani@codeweavers.com
--- tests/d3d12.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/tests/d3d12.c b/tests/d3d12.c index d87ace5a8..bca546e6e 100644 --- a/tests/d3d12.c +++ b/tests/d3d12.c @@ -32464,7 +32464,10 @@ static void test_resource_allocation_info(void) ok(infos1[i].SizeInBytes == sizes[i], "Got unexpected size %"PRIu64".\n", infos1[i].SizeInBytes);
if (!i) + { + vkd3d_test_pop_context(); continue; + }
ok(infos1[i].Offset - infos1[i - 1].Offset >= infos1[i - 1].SizeInBytes, "Got unexpected prev size %"PRIu64", prev offset %"PRIu64", offset %"PRIu64".\n",
This merge request was approved by Giovanni Mascellani.