[Lldb-commits] [PATCH] D87637: [lldb/test] Enable faulthandler in dotest

Jordan Rupprecht via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Fri Nov 13 17:26:05 PST 2020

rupprecht added a comment.

My cmake config appears to be correct. I tried adding this to `CommandInterpreter::HandleCommand`:

  lldbassert(ENABLE_BACKTRACES && "back traces are not enabled!");
  lldbassert(false && "crash!");

Running LLDB directly does what you describe:

  $ bin/lldb
  (lldb) help
  lldb: /home/rupprecht/src/llvm-project/lldb/source/Interpreter/CommandInterpreter.cpp:1655: bool lldb_private::CommandInterpreter::HandleCommand(const char *, lldb_private::LazyBool, lldb_private::CommandReturnObject &, lldb_private::ExecutionContext *, bool, bool): Assertion `false && "crash!"' failed.
  PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace.
  Stack dump:
  0.      Program arguments: bin/lldb 
   #0 0x00000000003a283a llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/rupprecht/src/llvm-project/llvm/lib/Support/Unix/Signals.inc:563:11
   #1 0x00000000003a2a0b PrintStackTraceSignalHandler(void*) /home/rupprecht/src/llvm-project/llvm/lib/Support/Unix/Signals.inc:630:1
   #2 0x00000000003a102b llvm::sys::RunSignalHandlers() /home/rupprecht/src/llvm-project/llvm/lib/Support/Signals.cpp:70:5

However, when I disable the faulthandler added here and run the lldb tests, I only see the "Assertion `false && "crash!"' failed" part. So: yes, something in the lldb test suite is messing with the signal handler, but it's not this (or it's not *only* this).
I recall running across other signal handling code in the lldb test framework (in the unittest2 bits), I'll see if I can find that again.

  rG LLVM Github Monorepo



More information about the lldb-commits mailing list