11 Commits

Author SHA1 Message Date
5dac046f2f contrib/elfparser: be a bit more defensive
Related: #139
2025-03-17 17:52:35 -07:00
a0e6b29b37 elfparser: Remove Rust legacy symbol demangling support from the C++ demangler
It isn't reachable anymore now that the rust symbol demangler supports them.
2023-10-06 11:41:42 +02:00
ab57e4314f Update the vendored version of rust-demangle.c
Support for the legacy symbol mangling scheme has been added.
2023-10-06 11:23:01 +02:00
242acd4489 Update the vendored version of rust-demangle.c
https://github.com/LykenSol/rust-demangle.c/pull/2 has been merged.
The main change from the PR as of me vendoring it is new support
for decoding and escaping UTF-8 string literals. In addition
clang-format was used for formatting the file.
2023-09-26 19:04:27 +02:00
68e7a425ae elfparser: demangle .. to ::
Related GNOME/gnome-builder#2090
2023-09-01 09:35:41 -07:00
df4c6406c9 elfparser: demangle legacy rust $GT$ and $LT$
Related #2090
2023-09-01 09:19:06 -07:00
c80e8080c3 elfparser: ensure returned string is owned by GLib
Technically, it's very likely that this will fall through to free() anyway,
but there aren't necessarily guarantees of that yet afaik.
2023-08-31 11:58:59 -07:00
35532b0343 elfparser: ignore -Wdeclaration-after-statement 2023-08-31 11:45:31 -07:00
3994635a2a libsysprof: Support demangling rust symbols using the v0 scheme
This doesn't add support for the legacy symbol mangling scheme which is
currently the default pending support in tools for the v0 symbol
mangling scheme. The legacy symbol mangling scheme is similar enough to
C++'s symbol mangling scheme that demangling them using the C++
demangler generally produces readable symbols. The v0 scheme is entirely
custom and due to backreferences and encoding all generic arguments not
very readable when mangled, so supporting it is more important than
supporting the legacy scheme.
2023-08-31 19:41:16 +02:00
57fcddb614 elfparser: switch to char 2023-08-17 14:19:38 -07:00
92b3b77dd2 contrib: create static library for elfparser
I want to move a bunch of this "contrib" style sources into their own
area so we can statically link them but keep them separate from main
sysprof code.
2023-05-25 15:15:20 -07:00