-
Notifications
You must be signed in to change notification settings - Fork 154
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Symbols are not demangled properly with -Csymbol-mangling-version=v0
#362
Comments
My best guess: by default
Compare to
Outside of |
Open to review a PR for this if it belongs in flamegraph, maybe it belongs in inferno instead? |
I think demangling should happen before stack collapsing, so it belongs here. @jonhoo, what do you think? |
Hmm, so, inferno doesn't demangle internally — we even explicitly removed support for that ages ago in jonhoo/inferno#144. See also jonhoo/inferno#180 (comment). It generally expects that whatever tool produces the input to the stack collapser does the demangling. |
Fair enough. |
This enables proper demangling of `RUSTFLAGS=-Csymbol-mangling-version=v0`, especially on macOS where the binary name is included in the frames. Closes flamegraph-rs#362.
This enables proper demangling of `RUSTFLAGS=-Csymbol-mangling-version=v0`, especially on macOS where the binary name is included in the frames. Closes flamegraph-rs#362.
I opened #363 to take care of this. |
See: https://doc.rust-lang.org/rustc/symbol-mangling/v0.html
With default demangling:
With
RUSTFLAGS=-Csymbol-mangling-version=v0
:That's on macOS, so dtrace based profiling.
There's a crate that supports better demangling: https://github.com/luser/rustfilt
The text was updated successfully, but these errors were encountered: