search for: maythrow2

Displaying 1 result from an estimated 1 matches for "maythrow2".

Did you mean: maythrow
2020 Jan 26
2
[RFC] Replacing inalloca with llvm.call.setup and preallocated
...n the call setup region, the newly established SP must be saved into the EH record when a call is setup. Consider the case below of inlining try / catch into a call region: ```c++ struct Foo { Foo(int x); Foo(const Foo &o); ~Foo(); int x, y, z; }; void use_callsetup(int, Foo, Foo); int maythrow2(); static inline int maythrow() { try { return maythrow2(); } catch (int) {} return 0; } Foo getf(); int main() { use_callsetup(maythrow(), getf(), getf()); } ``` The backend should be able to detect whether SP must be saved or not by checking if there are any invokes reachable along normal...