[PATCH] D39386: [Power9] Allow gpr callee saved spills in prologue to vector registers rather than stack

Zaara Syeda via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 27 13:18:13 PDT 2017


syzaara created this revision.
Herald added a subscriber: qcolombet.

Currently in llvm, CalleeSavedInfo can only assign a callee saved register to stack frame index to be spilled in the prologue. We would like to enable spilling gprs to vector registers. This patch adds the capability to spill to other registers aside from just the stack. It also adds the changes for power9 to spill gprs to volatile vector registers when they are available. This happens only for leaf functions that do not require CFI and when using the option -ppc-enable-pe-vector-spills.


https://reviews.llvm.org/D39386

Files:
  include/llvm/CodeGen/MachineFrameInfo.h
  lib/CodeGen/PrologEpilogInserter.cpp
  lib/Target/PowerPC/PPCFrameLowering.cpp
  lib/Target/PowerPC/PPCFrameLowering.h
  test/CodeGen/PowerPC/prolog_vec_spills.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D39386.120683.patch
Type: text/x-patch
Size: 14135 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20171027/fdb9bedb/attachment.bin>


More information about the llvm-commits mailing list