mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-11-03 12:57:27 +00:00
LDS, scratch and direct storage-buffer loads load element 0 when the lane is inactive or the address is out of bounds and select 0 as the result, instead of opening a selection per guard. Stores, atomics, formatted and physical-address accesses keep their branches. A branch guard cost four blocks per lane half, and the host compiler's time grows with the block count: PPSA11142's merged PSP vertex program emitted 16,983 blocks and 1,710 conditional branches, 5,907 and 868 with the selects. Co-Authored-By: Claude Fable 5.1 <[email protected]>