19ed5b49cSJohnny Chen //===-- ProcessMessage.cpp --------------------------------------*- C++ -*-===// 29ed5b49cSJohnny Chen // 3*2946cd70SChandler Carruth // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*2946cd70SChandler Carruth // See https://llvm.org/LICENSE.txt for license information. 5*2946cd70SChandler Carruth // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 69ed5b49cSJohnny Chen // 79ed5b49cSJohnny Chen //===----------------------------------------------------------------------===// 89ed5b49cSJohnny Chen 99ed5b49cSJohnny Chen #include "ProcessMessage.h" 109ed5b49cSJohnny Chen 119ed5b49cSJohnny Chen using namespace lldb_private; 129ed5b49cSJohnny Chen 13b9c1b51eSKate Stone const char *ProcessMessage::PrintCrashReason() const { 1428e57429SChaoren Lin return CrashReasonAsString(m_crash_reason); 159ed5b49cSJohnny Chen } 169ed5b49cSJohnny Chen 17b9c1b51eSKate Stone const char *ProcessMessage::PrintKind(Kind kind) { 189ed5b49cSJohnny Chen #ifdef LLDB_CONFIGURATION_BUILDANDINTEGRATION 1928e57429SChaoren Lin // Just return the code in ascii for integration builds. 209ed5b49cSJohnny Chen chcar str[8]; 219ed5b49cSJohnny Chen sprintf(str, "%d", reason); 229ed5b49cSJohnny Chen #else 239ed5b49cSJohnny Chen const char *str = NULL; 249ed5b49cSJohnny Chen 25b9c1b51eSKate Stone switch (kind) { 269ed5b49cSJohnny Chen case eInvalidMessage: 279ed5b49cSJohnny Chen str = "eInvalidMessage"; 289ed5b49cSJohnny Chen break; 29e544143fSEd Maste case eAttachMessage: 30e544143fSEd Maste str = "eAttachMessage"; 31e544143fSEd Maste break; 329ed5b49cSJohnny Chen case eExitMessage: 339ed5b49cSJohnny Chen str = "eExitMessage"; 349ed5b49cSJohnny Chen break; 359ed5b49cSJohnny Chen case eLimboMessage: 369ed5b49cSJohnny Chen str = "eLimboMessage"; 379ed5b49cSJohnny Chen break; 389ed5b49cSJohnny Chen case eSignalMessage: 399ed5b49cSJohnny Chen str = "eSignalMessage"; 409ed5b49cSJohnny Chen break; 419ed5b49cSJohnny Chen case eSignalDeliveredMessage: 429ed5b49cSJohnny Chen str = "eSignalDeliveredMessage"; 439ed5b49cSJohnny Chen break; 449ed5b49cSJohnny Chen case eTraceMessage: 459ed5b49cSJohnny Chen str = "eTraceMessage"; 469ed5b49cSJohnny Chen break; 479ed5b49cSJohnny Chen case eBreakpointMessage: 489ed5b49cSJohnny Chen str = "eBreakpointMessage"; 499ed5b49cSJohnny Chen break; 50e9ea0da8SMatt Kopec case eWatchpointMessage: 51e9ea0da8SMatt Kopec str = "eWatchpointMessage"; 52e9ea0da8SMatt Kopec break; 539ed5b49cSJohnny Chen case eCrashMessage: 549ed5b49cSJohnny Chen str = "eCrashMessage"; 559ed5b49cSJohnny Chen break; 56650648faSMatt Kopec case eNewThreadMessage: 57650648faSMatt Kopec str = "eNewThreadMessage"; 58650648faSMatt Kopec break; 59c5e53bd1SJoerg Sonnenberger case eExecMessage: 60c5e53bd1SJoerg Sonnenberger str = "eExecMessage"; 61c5e53bd1SJoerg Sonnenberger break; 629ed5b49cSJohnny Chen } 639ed5b49cSJohnny Chen #endif 649ed5b49cSJohnny Chen 659ed5b49cSJohnny Chen return str; 669ed5b49cSJohnny Chen } 679ed5b49cSJohnny Chen 68b9c1b51eSKate Stone const char *ProcessMessage::PrintKind() const { return PrintKind(m_kind); } 69