summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend/CompilerInstance.cpp
diff options
context:
space:
mode:
authorJessica Paquette <jpaquette@apple.com>2017-03-13 18:39:33 +0000
committerJessica Paquette <jpaquette@apple.com>2017-03-13 18:39:33 +0000
commitc984e21394b74e63eec7e8b03f14a25882c25ae6 (patch)
tree7bc8c67d83117c458df6ea2a88d6f952707891bc /clang/lib/Frontend/CompilerInstance.cpp
parent616641632ee5213a4f33b5471c7acea5137d38a2 (diff)
downloadbcm5719-llvm-c984e21394b74e63eec7e8b03f14a25882c25ae6.tar.gz
bcm5719-llvm-c984e21394b74e63eec7e8b03f14a25882c25ae6.zip
[Outliner] Add tail call support
This commit adds tail call support to the MachineOutliner pass. This allows the outliner to insert jumps rather than calls in areas where tail calling is possible. Outlined tail calls include the return or terminator of the basic block being outlined from. Tail call support allows the outliner to take returns and terminators into consideration while finding candidates to outline. It also allows the outliner to save more instructions. For example, in the X86-64 outliner, a tail called outlined function saves one instruction since no return has to be inserted. llvm-svn: 297653
Diffstat (limited to 'clang/lib/Frontend/CompilerInstance.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud