mirror of
https://github.com/intel/llvm.git
synced 2026-01-14 03:50:17 +08:00
This adjusts header file includes for headers and source files in Core. In doing so, one dependency cycle is eliminated because all the includes from Core to that project were dead includes anyway. In places where some files in other projects were only compiling due to a transitive include from another header, fixups have been made so that those files also include the header they need. Tested on Windows and Linux, and plan to address failures on OSX and FreeBSD after watching the bots. llvm-svn: 299714
116 lines
2.6 KiB
C++
116 lines
2.6 KiB
C++
//===-- State.cpp -----------------------------------------------*- C++ -*-===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
// C Includes
|
|
// C++ Includes
|
|
// Other libraries and framework includes
|
|
// Project includes
|
|
#include "lldb/Core/State.h"
|
|
|
|
using namespace lldb;
|
|
using namespace lldb_private;
|
|
|
|
const char *lldb_private::StateAsCString(StateType state) {
|
|
switch (state) {
|
|
case eStateInvalid:
|
|
return "invalid";
|
|
case eStateUnloaded:
|
|
return "unloaded";
|
|
case eStateConnected:
|
|
return "connected";
|
|
case eStateAttaching:
|
|
return "attaching";
|
|
case eStateLaunching:
|
|
return "launching";
|
|
case eStateStopped:
|
|
return "stopped";
|
|
case eStateRunning:
|
|
return "running";
|
|
case eStateStepping:
|
|
return "stepping";
|
|
case eStateCrashed:
|
|
return "crashed";
|
|
case eStateDetached:
|
|
return "detached";
|
|
case eStateExited:
|
|
return "exited";
|
|
case eStateSuspended:
|
|
return "suspended";
|
|
}
|
|
return "unknown";
|
|
}
|
|
|
|
const char *lldb_private::GetPermissionsAsCString(uint32_t permissions) {
|
|
switch (permissions) {
|
|
case 0:
|
|
return "---";
|
|
case ePermissionsWritable:
|
|
return "-w-";
|
|
case ePermissionsReadable:
|
|
return "r--";
|
|
case ePermissionsExecutable:
|
|
return "--x";
|
|
case ePermissionsReadable | ePermissionsWritable:
|
|
return "rw-";
|
|
case ePermissionsReadable | ePermissionsExecutable:
|
|
return "r-x";
|
|
case ePermissionsWritable | ePermissionsExecutable:
|
|
return "-wx";
|
|
case ePermissionsReadable | ePermissionsWritable | ePermissionsExecutable:
|
|
return "rwx";
|
|
default:
|
|
break;
|
|
}
|
|
return "???";
|
|
}
|
|
|
|
bool lldb_private::StateIsRunningState(StateType state) {
|
|
switch (state) {
|
|
case eStateAttaching:
|
|
case eStateLaunching:
|
|
case eStateRunning:
|
|
case eStateStepping:
|
|
return true;
|
|
|
|
case eStateConnected:
|
|
case eStateDetached:
|
|
case eStateInvalid:
|
|
case eStateUnloaded:
|
|
case eStateStopped:
|
|
case eStateCrashed:
|
|
case eStateExited:
|
|
case eStateSuspended:
|
|
break;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
bool lldb_private::StateIsStoppedState(StateType state, bool must_exist) {
|
|
switch (state) {
|
|
case eStateInvalid:
|
|
case eStateConnected:
|
|
case eStateAttaching:
|
|
case eStateLaunching:
|
|
case eStateRunning:
|
|
case eStateStepping:
|
|
case eStateDetached:
|
|
break;
|
|
|
|
case eStateUnloaded:
|
|
case eStateExited:
|
|
return !must_exist;
|
|
|
|
case eStateStopped:
|
|
case eStateCrashed:
|
|
case eStateSuspended:
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|