




 
With certain compiler settings code can be optimized such that the Profiler data does not appear to match your source code. For example when a tail call is optimized, the tail-called function appears in the call tree as a child of the parent of the caller, rather than as a child of its caller (just as in the debugger stack). Similarly code using 
funcall
 or 
apply
 may yield confusing results. To prevent tail-call optimization, use compiler setting 
debug 3
.