Revert "radv,aco: allow unaligned LDS access on GFX9+"
authorRhys Perry <pendingchaos02@gmail.com>
Mon, 1 Mar 2021 10:43:01 +0000 (10:43 +0000)
committerMarge Bot <eric+marge@anholt.net>
Tue, 2 Mar 2021 13:13:59 +0000 (13:13 +0000)
commit941739619e1f7841aee8048e6a046377b39b19b0
tree9396025cd67ef765ec4e19a25a6ec24b9dc9c013
parentacbd4881c286a0f461bc4b57191f687ea7e1eec9
Revert "radv,aco: allow unaligned LDS access on GFX9+"

This reverts commit 1a0b0e8460c1881f94975b3dfbe9c312d9c3fcf7.

The bounds checking behaviour of ds_read_b64, ds_read_b96 and ds_read_b128
make this feature very difficult to use safely.

This fixes a blocking artifact in Hitman 2. Previously, it contained:
ds_read_b64(local_invocation_index() * 4 - 4)
For local_invocation_index()=0, the second dword would be considered
out-of-bounds, even though it's at offset 0.

Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9332>
src/amd/compiler/aco_instruction_selection.cpp
src/amd/compiler/aco_ir.cpp
src/amd/compiler/aco_ir.h
src/amd/vulkan/radv_pipeline.c