I see that we do not inline a function marked as “always-inline” if it contains indirect branches ? what are the reasons behind this criterion ?
Thanks
Trent
I see that we do not inline a function marked as “always-inline” if it contains indirect branches ? what are the reasons behind this criterion ?
Thanks
Trent
Because we can’t reliably inline functions with indirect branches.
-eric
There have been extensive discussions about this on about 8 month ago on the mailing list. You’ll also find some comments in the code. We first have to improve points-to analysis before we think about revisiting inlining functions with indirect branches.
Always-inline just means inline when the compiler can determine that it is safe to so.
-Gerolf
].