#
d09231a4 |
| 06-Jun-2024 |
Med Ismail Bennani <ismail@bennani.ma> |
[lldb/crashlog] Remove aarch64 requirement on crashlog tests (#94553)
This PR removes the `target-aarch64` requirement on the crashlog tests
to exercice them on Intel bots and make image loading si
[lldb/crashlog] Remove aarch64 requirement on crashlog tests (#94553)
This PR removes the `target-aarch64` requirement on the crashlog tests
to exercice them on Intel bots and make image loading single-threaded
temporarily while implementing a fix for a deadlock issue when loading
the images in parallel.
Signed-off-by: Med Ismail Bennani <ismail@bennani.ma>
show more ...
|
#
dfdd8988 |
| 20-May-2023 |
Med Ismail Bennani <ismail@bennani.ma> |
[lldb/crashlog] Load inlined symbol into interactive crashlog
Sometimes, crash reports come with inlined symbols. These provide the exact stacktrace from the user binary.
However, when investigatin
[lldb/crashlog] Load inlined symbol into interactive crashlog
Sometimes, crash reports come with inlined symbols. These provide the exact stacktrace from the user binary.
However, when investigating a crash, it's very likely that the images related to the crashed thread are not available on the debugging user system or that the versions don't match. This causes interactive crashlog to show a degraded backtrace in lldb.
This patch aims to address that issue, by parsing the inlined symbols from the crash report and load them into lldb's target.
This patch is a follow-up to 27f27d1, focusing on inlined symbols loading from legacy (non-json) crash reports.
To do so, it updates the stack frame regular expression to make the capture groups more granular, to be able to extract the symbol name, the offset and the source location if available, while making it more maintainable.
So now, when parsing the crash report, we build a data structure containing all the symbol information for each stackframe. Then, after launching the scripted process for interactive mode, we write a JSON symbol file for each module, only containing the symbols that it contains.
Finally, we load the json symbol file into lldb, before showing the user the process status and backtrace.
rdar://97345586
Differential Revision: https://reviews.llvm.org/D146765
Signed-off-by: Med Ismail Bennani <ismail@bennani.ma>
show more ...
|