AnyPS5/core/libs/prx/libSceAgcDriver/tests
Dean Galvin d9ac21c6c9 fix(shader): make s_getpc_b64 return the shader's absolute address
s_getpc_b64 produced the next instruction's offset from the start of the
shader, so code that addresses data stored behind itself built V#s at a
tiny address. Astro Bot's video-frame NV12->RGB pass draws its quad with
an NGG shader that fetches the four vertices from after its own code
(s_getpc_b64; s_add_u32 0x98; s_addc_u32) - the buffer resolved to 0xf0,
every vertex read as zero, the quad never rasterized and the PlayStation
Studios logo video stayed black.

The result is now GetShaderBase + offset. The resource walk already
evaluates GetShaderBase per request from the code address, so the V#
names the real data and the same code at another address still shares
its compiled variant.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ButHENCbXXt8h4EZuWUabJ
2026-09-29 12:56:48 +13:00
..
shaders feat(agc): add standalone shader test for libSceAgcDriver 2026-09-16 07:43:05 +03:00
BdaContracts.cpp feat(shader): add fragmentShaderBarycentricEnabled flag to recompiler 2026-09-22 21:35:45 +03:00
BdaDevice.cpp perf(agc): move color transfers to + gpu resources cache 2026-09-23 22:32:42 +03:00
BdaExecution.cpp feat(shader): implement checked BDA reads and GPU fault reporting 2026-09-21 19:26:09 +03:00
BdaResources.cpp perf(agc): dispatch and draw recipes, data-only cache hits, unit shadows, bindless image tables 2026-09-26 19:00:40 -07:00
BdaShader.cpp feat(shader): implement checked BDA reads and GPU fault reporting 2026-09-21 19:26:09 +03:00
BdaShader.hpp feat(shader): implement checked BDA reads and GPU fault reporting 2026-09-21 19:26:09 +03:00
BdaTests.hpp feat(agc): support tiled color target layout 2026-09-23 13:15:30 +03:00
ColorTargetLayout.cpp feat(agc): support tiled color target layout 2026-09-23 13:15:30 +03:00
ColorTransferTests.cpp perf(agc): use device-local tile buffers and cache spir-v validation 2026-09-25 09:14:03 +03:00
ColorTransferTests.hpp perf(agc): move color transfers to + gpu resources cache 2026-09-23 22:32:42 +03:00
Flip.cpp fix(tests): align agc flip waits and memory synchronization checks 2026-09-28 19:32:43 +03:00
Graphics.cpp fix(agc): reject primitive restart only for indexed draws 2026-09-28 16:49:29 +13:00
GraphicsTests.hpp feat(agc): support rendertarget64kb shader textures 2026-09-24 11:18:35 +03:00
GuestAllocations.cpp fix(kernel): support page-aligned mprotect for loaded images 2026-09-23 12:45:39 +03:00
GuestSamplerResource.cpp perf(agc): batch GPU work in a recorder with host-imported guest memory 2026-09-25 16:27:49 -07:00
GuestTextureResource.cpp perf(agc): batch GPU work in a recorder with host-imported guest memory 2026-09-25 16:27:49 -07:00
Pm4.cpp fix(tests): align agc flip waits and memory synchronization checks 2026-09-28 19:32:43 +03:00
Recompiler.cpp feat(agcDriver): add draw handling and shader recompile preparation 2026-09-14 12:06:35 +03:00
Recorder.cpp fix(agc): preserve per-draw input buffer contents until gpu completion 2026-09-28 13:35:53 +03:00
ShaderMemory.cpp fix(shader): make s_getpc_b64 return the shader's absolute address 2026-09-29 12:56:48 +13:00
Submit.cpp feat(agc): extend graphics compiler contract and add mesh and tessellation paths 2026-09-15 21:19:06 +03:00
TextureDetiler.cpp perf(agc): dispatch and draw recipes, data-only cache hits, unit shadows, bindless image tables 2026-09-26 19:00:40 -07:00
TextureFormat.cpp test(agc): add texture resource and detiling coverage 2026-09-23 10:57:27 +03:00
TextureTiling.cpp feat(agc): support rendertarget64kb shader textures 2026-09-24 11:18:35 +03:00
Visual.cpp refactor(video): use presentation without maintenance extensions 2026-09-23 20:10:01 +03:00