15#ifndef LLVM_SUPPORT_PRETTYSTACKTRACE_H
16#define LLVM_SUPPORT_PRETTYSTACKTRACE_H
54 LLVM_ABI friend PrettyStackTraceEntry *
57 PrettyStackTraceEntry *NextEntry;
58 PrettyStackTraceEntry(
const PrettyStackTraceEntry &) =
delete;
59 void operator=(
const PrettyStackTraceEntry &) =
delete;
61 PrettyStackTraceEntry();
62 virtual ~PrettyStackTraceEntry();
68 const PrettyStackTraceEntry *
getNextEntry()
const {
return NextEntry; }
95 const char *
const *ArgV;
98 : ArgC(argc), ArgV(argv) {
static void print(raw_ostream &Out, object::Archive::Kind Kind, T Val)
This file defines the SmallVector class.
const PrettyStackTraceEntry * getNextEntry() const
getNextEntry - Return the next entry in the list of frames.
LLVM_ABI friend PrettyStackTraceEntry * ReverseStackTrace(PrettyStackTraceEntry *)
virtual void print(raw_ostream &OS) const =0
print - Emit information about this stack frame to OS.
PrettyStackTraceProgram(int argc, const char *const *argv)
PrettyStackTraceString(const char *str)
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.
This class implements an extremely fast bulk output stream that can only output to a stream.
This is an optimization pass for GlobalISel generic memory operations.
LLVM_ABI void setBugReportMsg(const char *Msg)
Replaces the generic bug report message that is output upon a crash.
LLVM_ABI const void * SavePrettyStackState()
Returns the topmost element of the "pretty" stack state.
LLVM_ABI void RestorePrettyStackState(const void *State)
Restores the topmost element of the "pretty" stack state to State, which should come from a previous ...
LLVM_ABI void EnablePrettyStackTraceOnSigInfoForThisThread(bool ShouldEnable=true)
Enables (or disables) dumping a "pretty" stack trace when the user sends SIGINFO or SIGUSR1 to the cu...
LLVM_ABI void EnablePrettyStackTrace()
Enables dumping a "pretty" stack trace when the program crashes.
LLVM_ABI const char * getBugReportMsg()
Get the bug report message that will be output upon a crash.