[PATCH] D18901: ARM: Use a callee save register for the swiftself parameter.

Matthias Braun via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 8 10:51:42 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 function so putting it into a callee save register should
avoid spills for the callers with only a minimum amount of extra spills
in the 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/D18901

Files:
  lib/Target/ARM/ARMCallingConv.td
  lib/Target/ARM/ARMFrameLowering.cpp
  test/CodeGen/ARM/swiftself.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D18901.53039.patch
Type: text/x-patch
Size: 5731 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160408/95dcb054/attachment.bin>


More information about the llvm-commits mailing list