Confirmed users
856
edits
m (→leak-gauge) |
|||
Line 198: | Line 198: | ||
On Mac and Linux, the stack traces generated by our internal debugging tools don't have very good symbol information (since they just show the results of <code>dladdr</code>). The stacks can be significantly improved (better symbols, and file name / line number information) by post-processing. Stacks can be piped through the scripts <code>mozilla/tools/rb/fix-linux-stack.pl</code> or <code>mozilla/tools/rb/fix-macosx-stack.pl</code> to do this. These scripts are designed to be run on balance trees in addition to raw stacks; since they are rather slow, it is often '''much faster''' to generate balance trees (e.g., using <code>make-tree.pl</code> for the refcount balancer or <code>diffbloatdump.pl --use-address</code> for trace-malloc) and ''then'' run the balance trees (which are much smaller) through the post-processing. | On Mac and Linux, the stack traces generated by our internal debugging tools don't have very good symbol information (since they just show the results of <code>dladdr</code>). The stacks can be significantly improved (better symbols, and file name / line number information) by post-processing. Stacks can be piped through the scripts <code>mozilla/tools/rb/fix-linux-stack.pl</code> or <code>mozilla/tools/rb/fix-macosx-stack.pl</code> to do this. These scripts are designed to be run on balance trees in addition to raw stacks; since they are rather slow, it is often '''much faster''' to generate balance trees (e.g., using <code>make-tree.pl</code> for the refcount balancer or <code>diffbloatdump.pl --use-address</code> for trace-malloc) and ''then'' run the balance trees (which are much smaller) through the post-processing. | ||
'''Warning''': <code>fix-macos-stack.pl</code> has not yet been updated for the change in debugging format on Mac OS X 10.5. | '''Warning''': <code>fix-macos-stack.pl</code> has not yet been updated for the change in debugging format on Mac OS X 10.5, so it doesn't always show the correct file, and never shows line numbers. | ||
== Getting symbol information for system libraries == | == Getting symbol information for system libraries == |