mib accepted this revision.
mib added a comment.
This revision is now accepted and ready to land.

Originally, when I implemented the patch and tested it on linux, the symbol on 
the abort frame was (__GI___assert_fail) on my machine.

In D73303#1846281 <https://reviews.llvm.org/D73303#1846281>, @labath wrote:

> Since the failure reason was not very obvious from the bot message, I took a 
> quick look, and to save you the trouble of reproducing this, here's what I 
> found:
>
> The reason the new test failed was because the symbols you are searching for 
> (`__GI_raise`, `__GI___assert_fail`) are private libc symbols which are only 
> available if you happen to have debug info for the system libc installed. If 
> you don't, these will show up as `raise` and `__assert_fail`, respectively.


This is why I thought I'd need to support both.

Otherwise, LGTM!

Thanks for investigating the issue.



================
Comment at: lldb/source/Target/AssertFrameRecognizer.cpp:19-38
 /// Checkes if the module containing a symbol has debug info.
 ///
 /// \param[in] target
 ///    The target containing the module.
 /// \param[in] module_spec
 ///    The module spec that should contain the symbol.
 /// \param[in] symbol_name
----------------
In this case, we can also remove this.


================
Comment at: lldb/source/Target/AssertFrameRecognizer.cpp:63-64
     module_spec = FileSpec("libc.so.6");
     symbol_name = "__GI_raise";
     if (!ModuleHasDebugInfo(target, module_spec, symbol_name))
       symbol_name = "raise";
----------------
And also this if global bindings are preferred.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D74252/new/

https://reviews.llvm.org/D74252



_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to