LLDB  mainline
CrashReason.h
Go to the documentation of this file.
1 //===-- CrashReason.h -------------------------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef liblldb_CrashReason_H_
10 #define liblldb_CrashReason_H_
11 
12 #include "lldb/lldb-types.h"
13 
14 #include <csignal>
15 
16 #include <string>
17 
18 enum class CrashReason {
20 
21  // SIGSEGV crash reasons.
27 
28  // SIGILL crash reasons.
37 
38  // SIGBUS crash reasons,
42 
43  // SIGFPE crash reasons,
52 };
53 
55 std::string GetCrashReasonString(CrashReason reason, const siginfo_t &info);
56 
57 const char *CrashReasonAsString(CrashReason reason);
58 
59 CrashReason GetCrashReason(const siginfo_t &info);
60 
61 #endif // #ifndef liblldb_CrashReason_H_
CrashReason::eAsyncTagCheckFault
@ eAsyncTagCheckFault
CrashReason::eCoprocessorError
@ eCoprocessorError
CrashReason::eIllegalOperand
@ eIllegalOperand
CrashReason::eIntegerOverflow
@ eIntegerOverflow
CrashReason::ePrivilegedAddress
@ ePrivilegedAddress
lldb::addr_t
uint64_t addr_t
Definition: lldb-types.h:83
CrashReason::eIllegalTrap
@ eIllegalTrap
CrashReason::eIllegalAlignment
@ eIllegalAlignment
CrashReason::eIllegalOpcode
@ eIllegalOpcode
CrashReason::eInvalidCrashReason
@ eInvalidCrashReason
CrashReason::eFloatUnderflow
@ eFloatUnderflow
CrashReason::eSyncTagCheckFault
@ eSyncTagCheckFault
CrashReason::eInvalidAddress
@ eInvalidAddress
CrashReasonAsString
const char * CrashReasonAsString(CrashReason reason)
Definition: CrashReason.cpp:250
string
string(SUBSTRING ${p} 10 -1 pStripped) if($
Definition: Plugins/CMakeLists.txt:38
CrashReason::eFloatInexactResult
@ eFloatInexactResult
lldb-types.h
CrashReason::ePrivilegedRegister
@ ePrivilegedRegister
CrashReason::eHardwareError
@ eHardwareError
CrashReason::ePrivilegedOpcode
@ ePrivilegedOpcode
GetCrashReason
CrashReason GetCrashReason(const siginfo_t &info)
Definition: CrashReason.cpp:341
CrashReason::eFloatSubscriptRange
@ eFloatSubscriptRange
CrashReason::eFloatDivideByZero
@ eFloatDivideByZero
CrashReason::eBoundViolation
@ eBoundViolation
CrashReason::eIllegalAddressingMode
@ eIllegalAddressingMode
CrashReason::eInternalStackError
@ eInternalStackError
GetCrashReasonString
std::string GetCrashReasonString(CrashReason reason, lldb::addr_t fault_addr)
Definition: CrashReason.cpp:162
CrashReason
CrashReason
Definition: CrashReason.h:18
CrashReason::eFloatInvalidOperation
@ eFloatInvalidOperation
CrashReason::eIntegerDivideByZero
@ eIntegerDivideByZero
CrashReason::eIllegalAddress
@ eIllegalAddress
CrashReason::eFloatOverflow
@ eFloatOverflow