From 109eb81d62679d3049ae5cf8e6e80260f1c6edca Mon Sep 17 00:00:00 2001 From: Gustavo Ariel Gamarra Rojas <111788638+GustavoGamarra95@users.noreply.github.com> Date: Sun, 11 Oct 2026 08:00:05 -0300 Subject: [PATCH] test(agc): check the MRT0 export formats alpha-to-coverage accepts Formats 4, 5, 6 and 9 (FP16, UNORM16, SNORM16 and 32-bit float ABGR) decode with alpha-to-coverage; formats 1, 2 and 3, which carry no floating-point alpha, still throw. --- core/libs/prx/libSceAgcDriver/tests/Graphics.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/core/libs/prx/libSceAgcDriver/tests/Graphics.cpp b/core/libs/prx/libSceAgcDriver/tests/Graphics.cpp index dd6352b3e..78a2e9a03 100644 --- a/core/libs/prx/libSceAgcDriver/tests/Graphics.cpp +++ b/core/libs/prx/libSceAgcDriver/tests/Graphics.cpp @@ -1685,8 +1685,14 @@ void AlphaToCoverageTests() { } queue.context[0x2dc] = 0xaa01; const auto exportFormat = queue.context.at(0x1c5); - queue.context[0x1c5] = (exportFormat & ~0xfu) | 1u; - expectFailure([&] { AgcDriver::Graphics::DecodeState(queue); }, "floating-point alpha"); + for (const auto format : {4u, 5u, 6u, 9u}) { + queue.context[0x1c5] = (exportFormat & ~0xfu) | format; + Require(AgcDriver::Graphics::DecodeState(queue).alphaToCoverage, "alpha-to-coverage rejected an MRT0 export format with a floating-point alpha"); + } + for (const auto format : {1u, 2u, 3u}) { + queue.context[0x1c5] = (exportFormat & ~0xfu) | format; + expectFailure([&] { AgcDriver::Graphics::DecodeState(queue); }, "floating-point alpha"); + } queue.context[0x1c5] = exportFormat; }