profBug
Henry Cejtin
henry@sourcelight.com
Sat, 2 Jun 2001 19:04:22 -0500
Sorry for the confusion, but I don't think that this explains any thing. You
are right that I can't use the full mlton -p compilation because the mlton I
have then runs gcc with the -p flag, which is wrong. What I usually do is
compile with -p, then re-link it without the -p and manually adding prof.o.
I must have forgotten to do this in the version I packed up.
I just put up a new version of the whole thing at
http://sourcelight.com/Z/profBug.tgz
In the latest version, if you run
mlprof go mlmon.out
you will see that it claims 2.51% for GC_foreachPointerInObject and 1.73% for
GC_foreachPointerInRange. If you then do `nm -na go', you will see thatthere
are no static symbols adjacent to these two, so I claim that
mlprof -s go mlmon.out
should attribute exactly the same percentage to these two. Despite this, if
you run
mlprof -s go mlmon.out
then neither of these routines appear at all.
Also, looking at the individual bins, I cound 129 counts for
GC_foreachPointerInObject and 90 for GC_foreachPointerInRange all out of a
total of 5217 counts. Thus I would say
GC_foreachPointerInObject 2.47%
GC_foreachPointerInRange 1.73%
so even without -s the count for GC_foreachPoitnerInObject looks slightly
wrong.