On 13 February 2012 11:56, Chris Lattner <[email protected]> wrote: > > On Feb 11, 2012, at 11:32 PM, Nick Lewycky wrote: > > > This patch would cause clang to mark the __cxa_guard_* functions > 'nounwind'. I believe this is the correct reading of the Itanium ABI; the > functions are completely specified, and each function which may throw an > exception specifically says what exception it will throw and under what > conditions. Most of the functions say nothing about throwing exceptions, so > I assume that they aren't allowed to throw. > > > > I'm not an expert on this though, so please review. > > > > This would fix the intersting problem of invokes to __cxa_guard_* > functions. Even though clang never generates an invoke to these, one still > manages to show up in > SingleSource/Benchmarks/Misc-C++-EH/Output/spirit.llvm.bc. How? When the > inliner inlines an invoke, all calls inside the callee turn into invokes > with their unwind-destination pointing at the inline-callsite's > unwind-destination. > > Looks obviously correct to me, please apply! >
Thanks Chris! Applied in r150435. Nick
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
