summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
diff options
context:
space:
mode:
authorSanjoy Das <sanjoy@playingwithpointers.com>2016-11-07 21:01:49 +0000
committerSanjoy Das <sanjoy@playingwithpointers.com>2016-11-07 21:01:49 +0000
commite06ef141fc7a7f3ee3bec84176659d022eb85f9a (patch)
treef9dfbb778f6d639086259f6ca893c37fa5e21fa6 /clang/lib/CodeGen
parent2b5ba7bae667faccb096d15bb7fdb35d986a6a90 (diff)
downloadbcm5719-llvm-e06ef141fc7a7f3ee3bec84176659d022eb85f9a.tar.gz
bcm5719-llvm-e06ef141fc7a7f3ee3bec84176659d022eb85f9a.zip
Avoid tail recursion elimination across calls with operand bundles
Summary: In some specific scenarios with well understood operand bundle types (like `"deopt"`) it may be possible to go ahead and convert recursion to iteration, but TailRecursionElimination does not have that logic today so avoid doing the right thing for now. I need some input on whether `"funclet"` operand bundles should also block tail recursion elimination. If not, I'll allow TRE across calls with `"funclet"` operand bundles and add a test case. Reviewers: rnk, majnemer, nlewycky, ahatanak Subscribers: mcrosier, llvm-commits Differential Revision: https://reviews.llvm.org/D26270 llvm-svn: 286147
Diffstat (limited to 'clang/lib/CodeGen')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud