On 03/26/2011 07:02 PM, Gergely Kis wrote:
Dear List Members,
We would like to announce the initial version of oprofile callgraph
support on the MIPS architecture.
[...]
You may download the code and access the documentation on the following URL:
http://oss.homejinni.com/redmine/projects/mips-oprofile
Instructions for submitting patches may be found here:
http://git.linux-mips.org/?p=linux.git;a=tree;f=Documentation/development-process;hb=f70c04ff7ad61bca1ed06390558568c6c8074139
That said, how do you handle the case of getting a fault while reading
code/data while unwinding?
Also I don't see how you handle these cases:
o Leaf functions where neither the $ra is saved to the stack, nor the
stack pointer adjusted.
o Functions where $sp is adjusted several times (use of alloca() or VLAs).
o Functions with multiple return points (i.e. 'jr $ra' in the middle of
a function).
o Functions with more than 1024 instructions.
Thanks,
David Daney