[AMDGPU] 4-align SGPR triples
authorJay Foad <jay.foad@amd.com>
Thu, 25 May 2023 15:18:25 +0000 (16:18 +0100)
committerJay Foad <jay.foad@amd.com>
Fri, 26 May 2023 07:06:25 +0000 (08:06 +0100)
commite4284a7c70cd6af818922cbe9722940fa2134ec0
treea3150e9b2bfa65ea7a2960af131d6e965c4ebee5
parent8d0412ce9d48d80db548d100b3eded19993248f6
[AMDGPU] 4-align SGPR triples

Previously SGPR triples like s[3:5] were aligned on a 3-SGPR boundary
which has no basis in hardware.

Aligning them on a 4-SGPR boundary is at least justified by the
architecture reference guide which says: "Quad-alignment of SGPRs is
required for operation on more than 64-bits".

Currently there are no instructions that take SGPR triples as operands
so the issue is latent.

Differential Revision: https://reviews.llvm.org/D151463
13 files changed:
llvm/lib/Target/AMDGPU/SIRegisterInfo.td
llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-extract.mir
llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-insert.mir
llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-trunc.mir
llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-unmerge-values.mir
llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
llvm/test/CodeGen/AMDGPU/GlobalISel/store-local.96.ll
llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
llvm/test/CodeGen/AMDGPU/copy-overlap-sgpr-kill.mir
llvm/test/CodeGen/AMDGPU/inline-asm.i128.ll
llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
llvm/test/CodeGen/AMDGPU/sgpr-phys-copy.mir
llvm/test/CodeGen/AMDGPU/splitkit-getsubrangeformask.ll