Commit Graph

58 Commits

Author SHA1 Message Date
Giovanni Mascellani
ffbf0320ba tests/hlsl: Mark a denormalization mode test as todo on Intel.
It behaves the same as llvmpipe.
2025-11-17 15:20:47 +01:00
Francisco Casas
cb7dac4d65 tests/shader_runner: Introduce a "cull-distance" capability. 2025-10-29 12:24:50 +01:00
Giovanni Mascellani
cd64aa69c8 tests/shader_runner: Introduce a new tag system.
Mostly to be able to associate a version number to each tag and
get rid of all the foo<1.2.3 tags. The new system also has fixed
tag slots, rather than dealing with strings, so we don't have to
manually adjust the size of the `tags' array.

With the new system each tag can be present or not, and if it is
present it can have an associated version number (of the form
major.minor.patch). If the version is not available, it is set to
0.0.0. Each tag can be queried for existence and for comparison
with the version number.
2025-10-06 19:41:09 +02:00
Giovanni Mascellani
41515b7047 tests: Introduce get_llvm_driver_version(). 2025-10-06 15:22:06 +02:00
Giovanni Mascellani
42016ab09c tests: Introduce get_nvidia_driver_version(). 2025-10-06 15:22:06 +02:00
Giovanni Mascellani
190033bb85 tests: Introduce get_mvk_driver_version(). 2025-10-06 15:22:06 +02:00
Giovanni Mascellani
265d0fddb5 tests: Introduce get_mesa_driver_version(). 2025-10-06 15:22:06 +02:00
Giovanni Mascellani
1ac58e58e6 tests: Remove is_mesa_intel_device().
It is never used.
2025-10-06 15:22:06 +02:00
Giovanni Mascellani
3c8b4ce731 ci: Run Linux tests on Debian trixie.
So we have a more recent version of SPIRV-Tools and also don't
have to recompile Mesa to test llvmpipe. This fixes a few failing
tests, but also breaks a couple.
2025-10-03 00:43:10 +02:00
Henri Verbeet
47a183c75b tests/d3d12: Check whether the d3d12 device supports geometry shaders. 2025-08-06 12:04:16 +02:00
Giovanni Mascellani
d65be3d0c5 tests: Skip test_graphics_compute_queue_synchronization() on paravirtualized MoltenVK.
This used to work when the macOS runner had a Sonoma host system.
Now it has Sequoia, even if the guest is still Sonoma, and the
test crashes with:

    [mvk-error] VK_TIMEOUT: MTLCommandBuffer "vkQueueSubmit MTLCommandBuffer on Queue 3-0" execution failed (code 2): Caused GPU Hang Error (00000003:kIOGPUCommandBufferCallbackErrorHang)
    vkd3d:56072:err:vkd3d_wait_for_gpu_timeline_semaphore Failed to wait for Vulkan timeline semaphore, vr -4.

Upgrading MoltenVK or the guest to Sequoia doesn't seem to help.
I haven't investigated the problem, but my experience is that
the paravirtualized Metal driver has a number of problems.
2025-06-05 16:50:15 +02:00
Giovanni Mascellani
6ca9395368 tests/d3d12: Skip testing NULL VBVs on NVIDIA on Windows.
It seems that the NVIDIA drivers leaves VBVs bindings untouched
when they are NULL (or the GPU buffer address is NULL), instead of
setting them to a null binding.

Differently from other cases of inconsistent behaviour between AMD
and NVIDIA, here I'm explicitly marking the NVIDIA behaviour as
broken, because the expected behaviour is spelled out explicitly
(at least for the D3D12 specification standards).
2025-04-21 14:43:59 +02:00
Giovanni Mascellani
7b4a29da81 tests: Mark a todo as resolved on MoltenVK 1.2.12.
Technically it is not, the Vulkan commands we're generating are
still not correct. But let's get rid of the failure message.
2025-04-03 20:28:31 +02:00
Giovanni Mascellani
aab8ba02d8 tests: Mark a number of test failures as buggy on macOS before Sequoia.
It's hard to pinpoint exactly what's going wrong with these
tests. They seem to be related to atomics and GPU timestamps,
both categories that are known to have problems on MoltenVK in a
way or another; those failures clearly depend on a few factors
like the MoltenVK version, the macOS version and whether we're in
a virtual machine or not, but the exact dependency on those factors
is hard to describe (for example, in general the paravirtualized
device offered inside virtual machines has a lot more problems than
real devices, but I've seen tests, fixed all other conditions,
working on the paravirtualized device and not on the real device).

The only thing all tests in this batch have in common is that I've
never seen them fail on a Sequoia system, thus I've settled for
using just that as the bug_if() condition. Ultimately, wasting a
lot of time to get to the bottom of each single test failure is
pointless, and being able to mark the CI job as not allowed to
fail gives better regression protection than investigating each
of those. Also, I routinely run the tests on a Sequoia system, so
if these tests get broken this is going to be noticed anyway.
2025-04-03 20:26:26 +02:00
Anna (navi) Figueiredo Gomes
d5ed4df254 tests/shader_runner: Add a "mesa<23.3" tag. 2024-12-19 20:34:55 +01:00
Giovanni Mascellani
3264378fa0 tests: Print the file name instead of the test name in test logs.
Some test programs, particularly the shader runner, are built from
many different files nowadays, and a line number is relatively
cumbersome to use if you don't know which file that line comes from.
2024-12-03 12:38:26 +01:00
Giovanni Mascellani
9f4a568868 tests: Mark a couple of tests as working on recent NVIDIA GPUs.
I don't know the exact version that fixed this todo, but on the
same hardware this test was failing a couple of years ago, so
I presume something was fixed at some point. I am writing my
current driver version, but a lower one might turn out to be
sufficient.
2024-07-31 20:50:58 +02:00
Giovanni Mascellani
7e557420b1 tests: Terminate the Agility SDK path with a slash.
That's what the documentation recommends. It used to work for me without
the slash, but maybe they changed something in recent versions.
2024-07-17 15:54:31 +02:00
Giovanni Mascellani
4f67675a51 tests: Support using the Agility SDK in the crosstests. 2024-07-09 16:57:03 +02:00
Giovanni Mascellani
c49daadce1 tests: Enable the d3d12 debug layer message callbacks. 2024-07-09 15:24:18 +02:00
Giovanni Mascellani
e3ddb76a3e tests: Improve feedback when enabling d3d12 debug layers. 2024-07-09 14:55:55 +02:00
Giovanni Mascellani
fe787cf77f tests: Skip sampling cube textures on Qualcomm.
They seem to always crash on the Adreno 540 on my OnePlus 5 phone with the
Qualcomm proprietary driver.
2024-07-08 18:49:28 +02:00
Giovanni Mascellani
59a5d8f852 tests: Add llvmpipe among the Mesa drivers. 2024-04-10 08:54:50 -05:00
Giovanni Mascellani
ecd38f3d1b tests: Print the device name. 2024-04-10 08:54:50 -05:00
Giovanni Mascellani
7cfb02cfd3 tests: Skip some tests that crash on llvmpipe. 2024-04-10 08:54:50 -05:00