search for: funcrecurse

Displaying 3 results from an estimated 3 matches for "funcrecurse".

2020 May 08
1
Noncapture use of locals disabling TailRecursionElimination
...https://openradar.appspot.com/ . Nick > Specifically, I have been looking into an issue where Clang cannot TCE > the following code: > > class Foo { > public: > __attribute__((noinline)) > ~Foo() {} > }; > > void callee() { > Foo f; > } > > void funcRecurse() { > callee(); > funcRecurse(); > } > > int main() { > funcRecurse(); > } > > In the above code, callee will be inlined into funcRecurse, generating > calls to ~Foo() along with lifetime management intrinsics, all using > locals, disabling TCE. Clang can s...
2020 May 08
1
Noncapture use of locals disabling TailRecursionElimination
On 2020-05-08 1:34 p.m., Xun Li wrote: > Hi, > > I was looking into the implementation of TailRecursionElimination, and > noticed that we have the constrain that if any call uses a local, even > though it doesn't capture the local, it would still prohibit TCE. This > contain seems unnecessary and overly limiting? I think it's a necessary limitation. The idea is that
2020 May 08
3
Noncapture use of locals disabling TailRecursionElimination
Hi, I was looking into the implementation of TailRecursionElimination, and noticed that we have the constrain that if any call uses a local, even though it doesn't capture the local, it would still prohibit TCE. This contain seems unnecessary and overly limiting? Relevant code is here: