AnyPS5/core/shader/recompiler/Optimization/src
Celegans12 73c68c04bd feat(agc): implement image atomics on 32_SINT and 32_FLOAT surfaces
The resource materializer refused every atomic image descriptor whose
format was not 32_UINT. RDNA2 image atomics act on the raw dword and
the numeric format only affects addressing, so 32_SINT and 32_FLOAT
surfaces are now accepted with the Uint numeric class and run through
the existing integer atomics and float compare-exchange loops. Other
formats still throw, and the message now names the format.

DescriptorBinding gains imageAtomic, carried through the shader disk
cache (format version 4) and the resource content key. The driver
binds those elements through a cached R32_UINT view of R32_SINT and
R32_SFLOAT storage images.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 17:51:06 +02:00
..
SrtWalker perf(recompiler): memoize SRT evaluation in a flat table and inline IrValue's hot accessors 2026-10-03 10:05:11 +13:00
SsaBuilder chore(shader): plan builder return for void + ssa pass init value 2026-09-22 10:00:42 +03:00
BindingAllocator.cpp feat(shader): retire threads past a partial thread-dimension dispatch 2026-09-29 21:22:19 +03:00
ConstantFolder.cpp feat(shader): constants folding + dead code eliminating 2026-09-17 12:45:10 +03:00
DeadCodeEliminator.cpp feat(shader): constants folding + dead code eliminating 2026-09-17 12:45:10 +03:00
DescriptorBindingBuilder.cpp feat(agc): implement image atomics on 32_SINT and 32_FLOAT surfaces 2026-10-05 17:51:06 +02:00
MaskedSelectEliminator.cpp perf(recompiler): let exec-guarded memory and exports end a masked select 2026-10-05 18:12:23 +13:00
ReadLaneEliminator.cpp fix(recompiler): saveexec operand order, atomic-zero rewrite, cache keys 2026-09-25 16:27:49 -07:00
RequestMemoryView.cpp fix(recompiler): saveexec operand order, atomic-zero rewrite, cache keys 2026-09-25 16:27:49 -07:00
ResourceMaterializer.cpp feat(agc): implement image atomics on 32_SINT and 32_FLOAT surfaces 2026-10-05 17:51:06 +02:00
ResourceTracker.cpp feat(shader): implement the integer flat and global atomics 2026-10-05 05:05:03 +02:00
ShaderInfoCollector.cpp fix(recompiler): start pixel waves without their helper invocations in EXEC 2026-10-02 21:08:32 +13:00
SharedMemoryBarrierInserter.cpp feat(shader): rdna memory op decoder impl 2026-09-15 07:07:50 +03:00