------- Additional Comments From laurent at guerby dot net 2005-03-15 20:20 ------- Thanks Nick for your answer. I missed the -l flag in the documentation, very useful indeed!
The per "line" profile looks indeed correct, but the call graph suffers from this nested=parent assimilation and shows p2 as a recursive function (if I understand correctly): index % time self children called name 0.12 0.00 1/1 main (cn.c:21 @ 80485dc) [6] [5] 0.7 0.12 0.00 1 p3 (cn.c:14 @ 804856d) [5] ----------------------------------------------- 0.00 0.00 1/20000001 main (cn.c:21 @ 80485dc) [6] 0.00 0.00 20000000/20000001 p2 (cn.c:12 @ 8048518) [2] [11] 0.0 0.00 0.00 20000001 p2 (cn.c:7 @ 804850d) [11] ----------------------------------------------- 0.00 0.00 1/1 main (cn.c:20 @ 80485d7) [38] [12] 0.0 0.00 0.00 1 p1 (cn.c:3 @ 80484c4) [12] ----------------------------------------------- I feel that treating nested functions as normal functions would be more helpful for GNU Ada and Pascal for example, but this is a new feature request no longer a bug. I don't know if it's easy to do in gprof, GCC 4.0 transforms all nested functions to top level functions (with arguments) during code generation, it wasn't doing so before so may be it helps. I will try "-l" on the larger original Ada software and report back in a few days. Thanks again for your time. Laurent -- http://sources.redhat.com/bugzilla/show_bug.cgi?id=747 ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils