From d9afe1078eec00a403ee1763c3fd8497d1013013 Mon Sep 17 00:00:00 2001 From: Dean Galvin Date: Mon, 12 Oct 2026 07:35:46 +1300 Subject: [PATCH] test(agc): enter whole quad mode in the implicit-LOD 1D sample test A pixel wave starts with only its covered pixels in EXEC, so a shader that takes an implicit LOD has to run s_wqm first or the helper lanes of a partly covered quad hold no coordinate. The test's pixel shader did not, which goes unnoticed while its one triangle covers every quad whole. llvmpipe clips that triangle at twice the viewport into three, and in the quads on the two inner edges the helpers' zero coordinate gave the last mip instead of the expected one. The shader now starts with s_wqm_b64 exec, exec, as a compiled pixel shader that samples with an implicit LOD does. --- .../tests/execution/ImagePlaneAddressOnLineImplicitLod.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/libs/prx/libSceAgcDriver/tests/execution/ImagePlaneAddressOnLineImplicitLod.cpp b/core/libs/prx/libSceAgcDriver/tests/execution/ImagePlaneAddressOnLineImplicitLod.cpp index cc39b8471..28a89a1f7 100644 --- a/core/libs/prx/libSceAgcDriver/tests/execution/ImagePlaneAddressOnLineImplicitLod.cpp +++ b/core/libs/prx/libSceAgcDriver/tests/execution/ImagePlaneAddressOnLineImplicitLod.cpp @@ -32,8 +32,8 @@ alignas(256) constexpr std::array VertexCode{ 0xe0382000, 0x80000005, 0xbf8c3f70, 0xf80008cf, 0x03020100, 0xbf810000, }; -alignas(256) constexpr std::array PixelCode{ - 0x10040010, 0x06060300, 0x10060611, 0xf0800f08, 0x00610402, 0xbf8c3f70, 0xf800180f, 0x07060504, 0xbf810000, +alignas(256) constexpr std::array PixelCode{ + 0xbefe0a7e, 0x10040010, 0x06060300, 0x10060611, 0xf0800f08, 0x00610402, 0xbf8c3f70, 0xf800180f, 0x07060504, 0xbf810000, }; alignas(256) constexpr std::array BiasPixelCode{