19ed5b49cSJohnny Chen //===-- ProcessMessage.cpp --------------------------------------*- C++ -*-===// 29ed5b49cSJohnny Chen // 39ed5b49cSJohnny Chen // The LLVM Compiler Infrastructure 49ed5b49cSJohnny Chen // 59ed5b49cSJohnny Chen // This file is distributed under the University of Illinois Open Source 69ed5b49cSJohnny Chen // License. See LICENSE.TXT for details. 79ed5b49cSJohnny Chen // 89ed5b49cSJohnny Chen //===----------------------------------------------------------------------===// 99ed5b49cSJohnny Chen 109ed5b49cSJohnny Chen #include "ProcessMessage.h" 119ed5b49cSJohnny Chen 129ed5b49cSJohnny Chen using namespace lldb_private; 139ed5b49cSJohnny Chen 14*b9c1b51eSKate Stone const char *ProcessMessage::PrintCrashReason() const { 1528e57429SChaoren Lin return CrashReasonAsString(m_crash_reason); 169ed5b49cSJohnny Chen } 179ed5b49cSJohnny Chen 18*b9c1b51eSKate Stone const char *ProcessMessage::PrintKind(Kind kind) { 199ed5b49cSJohnny Chen #ifdef LLDB_CONFIGURATION_BUILDANDINTEGRATION 2028e57429SChaoren Lin // Just return the code in ascii for integration builds. 219ed5b49cSJohnny Chen chcar str[8]; 229ed5b49cSJohnny Chen sprintf(str, "%d", reason); 239ed5b49cSJohnny Chen #else 249ed5b49cSJohnny Chen const char *str = NULL; 259ed5b49cSJohnny Chen 26*b9c1b51eSKate Stone switch (kind) { 279ed5b49cSJohnny Chen case eInvalidMessage: 289ed5b49cSJohnny Chen str = "eInvalidMessage"; 299ed5b49cSJohnny Chen break; 30e544143fSEd Maste case eAttachMessage: 31e544143fSEd Maste str = "eAttachMessage"; 32e544143fSEd Maste break; 339ed5b49cSJohnny Chen case eExitMessage: 349ed5b49cSJohnny Chen str = "eExitMessage"; 359ed5b49cSJohnny Chen break; 369ed5b49cSJohnny Chen case eLimboMessage: 379ed5b49cSJohnny Chen str = "eLimboMessage"; 389ed5b49cSJohnny Chen break; 399ed5b49cSJohnny Chen case eSignalMessage: 409ed5b49cSJohnny Chen str = "eSignalMessage"; 419ed5b49cSJohnny Chen break; 429ed5b49cSJohnny Chen case eSignalDeliveredMessage: 439ed5b49cSJohnny Chen str = "eSignalDeliveredMessage"; 449ed5b49cSJohnny Chen break; 459ed5b49cSJohnny Chen case eTraceMessage: 469ed5b49cSJohnny Chen str = "eTraceMessage"; 479ed5b49cSJohnny Chen break; 489ed5b49cSJohnny Chen case eBreakpointMessage: 499ed5b49cSJohnny Chen str = "eBreakpointMessage"; 509ed5b49cSJohnny Chen break; 51e9ea0da8SMatt Kopec case eWatchpointMessage: 52e9ea0da8SMatt Kopec str = "eWatchpointMessage"; 53e9ea0da8SMatt Kopec break; 549ed5b49cSJohnny Chen case eCrashMessage: 559ed5b49cSJohnny Chen str = "eCrashMessage"; 569ed5b49cSJohnny Chen break; 57650648faSMatt Kopec case eNewThreadMessage: 58650648faSMatt Kopec str = "eNewThreadMessage"; 59650648faSMatt Kopec break; 60c5e53bd1SJoerg Sonnenberger case eExecMessage: 61c5e53bd1SJoerg Sonnenberger str = "eExecMessage"; 62c5e53bd1SJoerg Sonnenberger break; 639ed5b49cSJohnny Chen } 649ed5b49cSJohnny Chen #endif 659ed5b49cSJohnny Chen 669ed5b49cSJohnny Chen return str; 679ed5b49cSJohnny Chen } 689ed5b49cSJohnny Chen 69*b9c1b51eSKate Stone const char *ProcessMessage::PrintKind() const { return PrintKind(m_kind); } 70