Commit 3b628fa67a for ffmpeg

commit 3b628fa67aab02af85ac414dbfdc9125ba375ea0
Author: Ramiro Polla <ramiro.polla@gmail.com>
Date:   Fri Sep 25 12:36:35 2026 +0200

    tests/fate/swscale: run unstable tests for all available backends

diff --git a/tests/fate/libswscale.mak b/tests/fate/libswscale.mak
index 8302a55b8a..4308044dba 100644
--- a/tests/fate/libswscale.mak
+++ b/tests/fate/libswscale.mak
@@ -31,17 +31,37 @@ fate-sws-yuv-range: CMD = framecrc \
   -frames 1 \
   -vf scale=in_color_matrix=bt601:in_range=limited:out_color_matrix=bt601:out_range=full:flags=+accurate_rnd+bitexact

-# This self-check currently fails for legacy swscale, so pass SWS_UNSTABLE to use the new code
-FATE_LIBSWSCALE-$(CONFIG_UNSTABLE) += fate-sws-unscaled
-fate-sws-unscaled: libswscale/tests/swscale$(EXESUF)
-fate-sws-unscaled: CMD = run libswscale/tests/swscale$(EXESUF) -scaler none -backends unstable -v 16
-fate-sws-unscaled: REF = /dev/null
+ifeq ($(CONFIG_UNSTABLE),yes)
+SWS_UNSTABLE_BACKENDS-yes                            += c memcpy
+ifeq ($(ARCH_X86_64),yes)
+SWS_UNSTABLE_BACKENDS-$(HAVE_X86ASM)                 += x86
+endif
+ifeq ($(ARCH_AARCH64),yes)
+SWS_UNSTABLE_BACKENDS-$(HAVE_NEON)                   += aarch64
+endif
+# TODO: enable spirv tests once they pass on all Vulkan devices.
+# SWS_UNSTABLE_BACKENDS-$(HAVE_SPIRV_HEADERS_SPIRV_H)  += spirv
+# SWS_UNSTABLE_BACKENDS-$(HAVE_SPIRV_UNIFIED1_SPIRV_H) += spirv
+
+# Set -hw default for Vulkan tests.
+fate-sws-unscaled-spirv fate-sws-unstable-spirv: SWS_HW = -hw default
+
+# Legacy swscale fails this self-check; test each available ops backend.
+FATE_SWS_UNSCALED := $(SWS_UNSTABLE_BACKENDS-yes:%=fate-sws-unscaled-%)
+$(FATE_SWS_UNSCALED): libswscale/tests/swscale$(EXESUF)
+$(FATE_SWS_UNSCALED): CMD = run libswscale/tests/swscale$(EXESUF) -v 16 $(SWS_HW) -scaler none -backends $(@:fate-sws-unscaled-%=%)
+$(FATE_SWS_UNSCALED): REF = /dev/null
+fate-sws-unscaled: $(FATE_SWS_UNSCALED)

 # Run only 2% of swscale tests to keep the run time short, and only check for failure
-FATE_LIBSWSCALE-$(CONFIG_UNSTABLE) += fate-sws-unstable
-fate-sws-unstable: libswscale/tests/swscale$(EXESUF)
-fate-sws-unstable: CMD = run libswscale/tests/swscale$(EXESUF) -backends unstable -p 0.02 -v 16
-fate-sws-unstable: REF = /dev/null
+FATE_SWS_UNSTABLE := $(SWS_UNSTABLE_BACKENDS-yes:%=fate-sws-unstable-%)
+$(FATE_SWS_UNSTABLE): libswscale/tests/swscale$(EXESUF)
+$(FATE_SWS_UNSTABLE): CMD = run libswscale/tests/swscale$(EXESUF) -v 16 $(SWS_HW) -backends $(@:fate-sws-unstable-%=%) -p 0.02
+$(FATE_SWS_UNSTABLE): REF = /dev/null
+fate-sws-unstable: $(FATE_SWS_UNSTABLE)
+
+FATE_LIBSWSCALE += $(FATE_SWS_UNSCALED) $(FATE_SWS_UNSTABLE)
+endif

 ifneq ($(HAVE_BIGENDIAN),yes)