[PATCH] D18869: AArch64: Use a callee save registers for swiftself parameters

Matthias Braun via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 7 14:39:04 PDT 2016


MatzeB created this revision.
MatzeB added reviewers: t.p.northover, manmanren, qcolombet.
MatzeB added a subscriber: llvm-commits.
MatzeB set the repository for this revision to rL LLVM.
Herald added subscribers: mcrosier, rengolin, aemerson.

It is very likely that the swiftself parameter is alive throughout most
functions. Putting it into a callee save register should avoid spills
for callers with only a few extra spills in callees.

Currently the generated code is correct but unnecessarily spills and
reloads arguments passed in callee save registers, I will address this
in upcoming patches.

Repository:
  rL LLVM

http://reviews.llvm.org/D18869

Files:
  lib/Target/AArch64/AArch64CallingConvention.td
  lib/Target/AArch64/AArch64FrameLowering.cpp
  test/CodeGen/AArch64/swiftself.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D18869.52956.patch
Type: text/x-patch
Size: 4001 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160407/0636d2d1/attachment.bin>


More information about the llvm-commits mailing list