TRE: make TRE a bit more aggressive
authorSaleem Abdulrasool <compnerd@compnerd.org>
Thu, 16 Oct 2014 03:27:30 +0000 (03:27 +0000)
committerSaleem Abdulrasool <compnerd@compnerd.org>
Thu, 16 Oct 2014 03:27:30 +0000 (03:27 +0000)
commitebe6584c32a5f6b475d8d1d29857def9f2e2adf6
tree3124d1d3ec3a6ad19b754e77980afbe2da20faf5
parent608d59f535b9981602d4553b18f346e8aee25cc2
TRE: make TRE a bit more aggressive

Make tail recursion elimination a bit more aggressive.  This allows us to get
tail recursion on functions that are just branches to a different function.  The
fact that the function takes a byval argument does not restrict it from being
optimised into just a tail call.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@219899 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Scalar/TailRecursionElimination.cpp
test/Transforms/Inline/byval-tail-call.ll
test/Transforms/TailCallElim/basic.ll
test/Transforms/TailCallElim/byval.ll [new file with mode: 0644]