diff options
| author | Sanjoy Das <sanjoy@playingwithpointers.com> | 2016-11-07 21:01:49 +0000 |
|---|---|---|
| committer | Sanjoy Das <sanjoy@playingwithpointers.com> | 2016-11-07 21:01:49 +0000 |
| commit | e06ef141fc7a7f3ee3bec84176659d022eb85f9a (patch) | |
| tree | f9dfbb778f6d639086259f6ca893c37fa5e21fa6 /clang/test/Index/Core/index-source.cpp | |
| parent | 2b5ba7bae667faccb096d15bb7fdb35d986a6a90 (diff) | |
| download | bcm5719-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/test/Index/Core/index-source.cpp')
0 files changed, 0 insertions, 0 deletions

