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 149ed5b49cSJohnny Chen const char * 159ed5b49cSJohnny Chen ProcessMessage::PrintCrashReason() const 169ed5b49cSJohnny Chen { 17*28e57429SChaoren Lin return CrashReasonAsString(m_crash_reason); 189ed5b49cSJohnny Chen } 199ed5b49cSJohnny Chen 209ed5b49cSJohnny Chen const char * 219ed5b49cSJohnny Chen ProcessMessage::PrintKind(Kind kind) 229ed5b49cSJohnny Chen { 239ed5b49cSJohnny Chen #ifdef LLDB_CONFIGURATION_BUILDANDINTEGRATION 24*28e57429SChaoren Lin // Just return the code in ascii for integration builds. 259ed5b49cSJohnny Chen chcar str[8]; 269ed5b49cSJohnny Chen sprintf(str, "%d", reason); 279ed5b49cSJohnny Chen #else 289ed5b49cSJohnny Chen const char *str = NULL; 299ed5b49cSJohnny Chen 309ed5b49cSJohnny Chen switch (kind) 319ed5b49cSJohnny Chen { 329ed5b49cSJohnny Chen case eInvalidMessage: 339ed5b49cSJohnny Chen str = "eInvalidMessage"; 349ed5b49cSJohnny Chen break; 35e544143fSEd Maste case eAttachMessage: 36e544143fSEd Maste str = "eAttachMessage"; 37e544143fSEd Maste break; 389ed5b49cSJohnny Chen case eExitMessage: 399ed5b49cSJohnny Chen str = "eExitMessage"; 409ed5b49cSJohnny Chen break; 419ed5b49cSJohnny Chen case eLimboMessage: 429ed5b49cSJohnny Chen str = "eLimboMessage"; 439ed5b49cSJohnny Chen break; 449ed5b49cSJohnny Chen case eSignalMessage: 459ed5b49cSJohnny Chen str = "eSignalMessage"; 469ed5b49cSJohnny Chen break; 479ed5b49cSJohnny Chen case eSignalDeliveredMessage: 489ed5b49cSJohnny Chen str = "eSignalDeliveredMessage"; 499ed5b49cSJohnny Chen break; 509ed5b49cSJohnny Chen case eTraceMessage: 519ed5b49cSJohnny Chen str = "eTraceMessage"; 529ed5b49cSJohnny Chen break; 539ed5b49cSJohnny Chen case eBreakpointMessage: 549ed5b49cSJohnny Chen str = "eBreakpointMessage"; 559ed5b49cSJohnny Chen break; 56e9ea0da8SMatt Kopec case eWatchpointMessage: 57e9ea0da8SMatt Kopec str = "eWatchpointMessage"; 58e9ea0da8SMatt Kopec break; 599ed5b49cSJohnny Chen case eCrashMessage: 609ed5b49cSJohnny Chen str = "eCrashMessage"; 619ed5b49cSJohnny Chen break; 62650648faSMatt Kopec case eNewThreadMessage: 63650648faSMatt Kopec str = "eNewThreadMessage"; 64650648faSMatt Kopec break; 65c5e53bd1SJoerg Sonnenberger case eExecMessage: 66c5e53bd1SJoerg Sonnenberger str = "eExecMessage"; 67c5e53bd1SJoerg Sonnenberger break; 689ed5b49cSJohnny Chen } 699ed5b49cSJohnny Chen #endif 709ed5b49cSJohnny Chen 719ed5b49cSJohnny Chen return str; 729ed5b49cSJohnny Chen } 739ed5b49cSJohnny Chen 749ed5b49cSJohnny Chen const char * 759ed5b49cSJohnny Chen ProcessMessage::PrintKind() const 769ed5b49cSJohnny Chen { 779ed5b49cSJohnny Chen return PrintKind(m_kind); 789ed5b49cSJohnny Chen } 79