Messages in this thread | | | Date | Thu, 22 Oct 2009 09:16:25 -0700 | From | David Daney <> | Subject | Re: [PATCH -v4 9/9] tracing: add function graph tracer support for MIPS |
| |
Steven Rostedt wrote: > On Thu, 2009-10-22 at 08:59 -0700, David Daney wrote: > >> This is what I was talking about up-thread. Leaf functions may have no >> function prolog. If you do code scanning you will fail. While scanning >> backwards, there is no way to know when you have entered a new function. >> Looking for function return sequences 'jr ra' doesn't work as there >> may be functions with multiple return sites, functions that never >> return, or arbitrary data before the function. I think you have to >> force a frame pointer to be established if you want this to work. > > Functions that run off into another function?? I guess the compiler > could do that, but with -pg enable, I would think is broken. >
Use of GCC-4.5's __builtin_unreachable() can lead to this, as well as functions that call noreturn functions.
Note to self: Time to resend the __builtin_unreachable() patch set again...
David Daney
| |