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
18enum class CrashReason {
20
21 // SIGSEGV crash reasons.
27
28 // SIGILL crash reasons.
37
38 // SIGBUS crash reasons,
42
43 // SIGFPE crash reasons,
52};
53
54std::string GetCrashReasonString(CrashReason reason, lldb::addr_t fault_addr);
55std::string GetCrashReasonString(CrashReason reason, const siginfo_t &info);
56
57const char *CrashReasonAsString(CrashReason reason);
58
59CrashReason GetCrashReason(const siginfo_t &info);
60
61#endif // #ifndef liblldb_CrashReason_H_
const char * CrashReasonAsString(CrashReason reason)
std::string GetCrashReasonString(CrashReason reason, lldb::addr_t fault_addr)
CrashReason GetCrashReason(const siginfo_t &info)
CrashReason
Definition: CrashReason.h:18
@ eFloatSubscriptRange
@ eIllegalAddressingMode
@ eFloatInvalidOperation
@ eIntegerDivideByZero
uint64_t addr_t
Definition: lldb-types.h:83