[PATCH] D76356: [AMDGPU] Introduce more scratch registers in the ABI.

Tony Tye via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 20 11:23:26 PDT 2020


t-tye added inline comments.


================
Comment at: llvm/docs/AMDGPUUsage.rst:8710
+    * All SGPR registers except the clobbered registers of SGPR4-31.
+    * VGPR36-39
+      VGPR44-47
----------------
arsenm wrote:
> t-tye wrote:
> > arsenm wrote:
> > > A description of why it's split this way may be helpful
> > Is the striping being picked at 4 VGPRs to match the hardware VGPR allocation granularity (4 for <=GFX9 and 8 for >=GFX10)? How does this stripping impact register file fragmentation? What is the impact of objects being promoted to registers that are larger than 4 VGPRs?
> These aren't used for argument passing, so there's no concept of objects to consider
Also this is an ABI breaking change (as is the change for the handling of the wave scratch offset) so should the EI_ABIVERSION for each EI_OSABI in the ELF header be bumped? My thinking is no since AMD has not yet started to support isa level linking nor function pointers so this change cannot affect any existing programs.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D76356/new/

https://reviews.llvm.org/D76356





More information about the llvm-commits mailing list