[PATCH] D63824: AMDGPU: Add pass to lower SGPR spills

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 26 08:14:53 PDT 2019


arsenm created this revision.
arsenm added a reviewer: rampitec.
Herald added subscribers: jsji, t-tye, tpr, dstuttard, yaxunl, mgorny, nhaehnle, wdng, jvesely, kzhuravl, qcolombet.

This is split out from my patches to split register allocation into a
separate SGPR and VGPR phase, and has some parts that aren't yet used
(like maintaining LiveIntervals).

      

This simplifies making the frame pointer register callee saved. As it
is now, the code to determine callee saves needs to predict all the
possible SGPR spills and how many callee saved VGPRs are needed. By
handling this before PrologEpilogInserter, it's possible to just check
the spill objects that already exist.


https://reviews.llvm.org/D63824

Files:
  lib/Target/AMDGPU/AMDGPU.h
  lib/Target/AMDGPU/AMDGPUCallingConv.td
  lib/Target/AMDGPU/AMDGPURegisterInfo.cpp
  lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
  lib/Target/AMDGPU/CMakeLists.txt
  lib/Target/AMDGPU/SIFrameLowering.cpp
  lib/Target/AMDGPU/SIFrameLowering.h
  lib/Target/AMDGPU/SILowerSGPRSpills.cpp
  lib/Target/AMDGPU/SIRegisterInfo.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D63824.206677.patch
Type: text/x-patch
Size: 18859 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190626/0179105c/attachment.bin>


More information about the llvm-commits mailing list