Hi, When reading inlining code in GCC, I wonder if we have size heuristics to limit inlining long call sequence? For example, for call sequence A -> B -> C -> D -> ... -> X -> Y -> Z if each function call grows size by a very small amount, inlining Z all the way up to the outermost function could result in a big function which may hurt icache. Is this case handled in inliner? if yes, which code handles this? Thanks in advance.
BTW, I am using GCC 6, not sure if trunk has different behavior. Thanks, bin