diff --git a/tests/d3d12.c b/tests/d3d12.c index fcdf844d..79444f1d 100644 --- a/tests/d3d12.c +++ b/tests/d3d12.c @@ -15616,6 +15616,12 @@ static void test_sample_c_lz(void) for (i = 0; i < ARRAY_SIZE(tests); ++i) { + if (is_qualcomm_device(device)) + { + skip("Sampling a cube texture crashes on Qualcomm.\n"); + break; + } + vkd3d_test_push_context("test %u", i); ps_constant.x = tests[i].d_ref; diff --git a/tests/d3d12_crosstest.h b/tests/d3d12_crosstest.h index 99641425..c24623ca 100644 --- a/tests/d3d12_crosstest.h +++ b/tests/d3d12_crosstest.h @@ -417,6 +417,11 @@ static inline bool is_nvidia_device(ID3D12Device *device) return false; } +static inline bool is_qualcomm_device(ID3D12Device *device) +{ + return false; +} + static inline bool is_radv_device(ID3D12Device *device) { return false; @@ -709,6 +714,14 @@ static inline bool is_nvidia_device(ID3D12Device *device) return properties.driverID == VK_DRIVER_ID_NVIDIA_PROPRIETARY_KHR; } +static inline bool is_qualcomm_device(ID3D12Device *device) +{ + VkPhysicalDeviceDriverPropertiesKHR properties; + + get_driver_properties(device, NULL, &properties); + return properties.driverID == VK_DRIVER_ID_QUALCOMM_PROPRIETARY_KHR; +} + static inline bool is_radv_device(ID3D12Device *device) { VkPhysicalDeviceDriverPropertiesKHR properties;