AnyPS5/core/shader
Adrià Franch bc12722698 fix(shader): convert unorm and snorm buffer format loads with correct rounding
Format loads divided by 2^b-1 with OpFDiv, which Vulkan only bounds to 2.5 ULP; RADV returns a
different f32 than the hardware for many 8- and 16-bit values. The quotient is now built on the
bits: v/(2^b-1) is v's b bits repeated, so the mantissa is the rotated value replicated and rounded
on the next bit (no ties). Adds an execution test of buffer_load_format_x..xyzw,
tbuffer_load_format_x/xy/xyz and buffer_store_format_x..xyzw against values measured on RDNA.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-04 18:49:49 +02:00
..
recompiler fix(shader): convert unorm and snorm buffer format loads with correct rounding 2026-10-04 18:49:49 +02:00