LLDB  mainline
Classes | Macros | Enumerations | Functions | Variables
Process.cpp File Reference
#include <atomic>
#include <memory>
#include <mutex>
#include "llvm/Support/ScopedPrinter.h"
#include "llvm/Support/Threading.h"
#include "Plugins/Process/Utility/InferiorCallPOSIX.h"
#include "lldb/Breakpoint/BreakpointLocation.h"
#include "lldb/Breakpoint/StoppointCallbackContext.h"
#include "lldb/Core/Debugger.h"
#include "lldb/Core/Module.h"
#include "lldb/Core/ModuleSpec.h"
#include "lldb/Core/PluginManager.h"
#include "lldb/Core/StreamFile.h"
#include "lldb/Expression/DiagnosticManager.h"
#include "lldb/Expression/IRDynamicChecks.h"
#include "lldb/Expression/UserExpression.h"
#include "lldb/Expression/UtilityFunction.h"
#include "lldb/Host/ConnectionFileDescriptor.h"
#include "lldb/Host/FileSystem.h"
#include "lldb/Host/Host.h"
#include "lldb/Host/HostInfo.h"
#include "lldb/Host/OptionParser.h"
#include "lldb/Host/Pipe.h"
#include "lldb/Host/Terminal.h"
#include "lldb/Host/ThreadLauncher.h"
#include "lldb/Interpreter/CommandInterpreter.h"
#include "lldb/Interpreter/OptionArgParser.h"
#include "lldb/Interpreter/OptionValueProperties.h"
#include "lldb/Symbol/Function.h"
#include "lldb/Symbol/Symbol.h"
#include "lldb/Target/ABI.h"
#include "lldb/Target/CPPLanguageRuntime.h"
#include "lldb/Target/DynamicLoader.h"
#include "lldb/Target/InstrumentationRuntime.h"
#include "lldb/Target/JITLoader.h"
#include "lldb/Target/JITLoaderList.h"
#include "lldb/Target/LanguageRuntime.h"
#include "lldb/Target/MemoryHistory.h"
#include "lldb/Target/MemoryRegionInfo.h"
#include "lldb/Target/ObjCLanguageRuntime.h"
#include "lldb/Target/OperatingSystem.h"
#include "lldb/Target/Platform.h"
#include "lldb/Target/Process.h"
#include "lldb/Target/RegisterContext.h"
#include "lldb/Target/StopInfo.h"
#include "lldb/Target/StructuredDataPlugin.h"
#include "lldb/Target/SystemRuntime.h"
#include "lldb/Target/Target.h"
#include "lldb/Target/TargetList.h"
#include "lldb/Target/Thread.h"
#include "lldb/Target/ThreadPlan.h"
#include "lldb/Target/ThreadPlanBase.h"
#include "lldb/Target/UnixSignals.h"
#include "lldb/Utility/Event.h"
#include "lldb/Utility/Log.h"
#include "lldb/Utility/NameMatches.h"
#include "lldb/Utility/ProcessInfo.h"
#include "lldb/Utility/SelectHelper.h"
#include "lldb/Utility/State.h"

Go to the source code of this file.

Classes

class  ProcessOptionValueProperties
 
class  IOHandlerProcessSTDIO
 

Macros

#define ENABLE_MEMORY_CACHING
 
#define DISABLE_MEM_CACHE_DEFAULT   false
 
#define USE_ALLOCATE_MEMORY_CACHE   1
 

Enumerations

enum  {
  ePropertyDisableMemCache, ePropertyExtraStartCommand, ePropertyIgnoreBreakpointsInExpressions, ePropertyUnwindOnErrorInExpressions,
  ePropertyPythonOSPluginPath, ePropertyStopOnSharedLibraryEvents, ePropertyDetachKeepsStopped, ePropertyMemCacheLineSize,
  ePropertyWarningOptimization, ePropertyStopOnExec, ePropertyUtilityExpressionTimeout
}
 

Functions

static microseconds GetOneThreadExpressionTimeout (const EvaluateExpressionOptions &options)
 
static Timeout< std::micro > GetExpressionTimeout (const EvaluateExpressionOptions &options, bool before_first_timeout)
 
static llvm::Optional< ExpressionResultsHandleStoppedEvent (Thread &thread, const ThreadPlanSP &thread_plan_sp, RestorePlanState &restorer, const EventSP &event_sp, EventSP &event_to_broadcast_sp, const EvaluateExpressionOptions &options, bool handle_interrupts)
 

Variables

static constexpr PropertyDefinition g_properties []
 
static constexpr OptionDefinition g_process_launch_options []
 
static const char * g_resume_sync_name = "lldb.Process.ResumeSynchronous.hijack"
 

Macro Definition Documentation

◆ DISABLE_MEM_CACHE_DEFAULT

#define DISABLE_MEM_CACHE_DEFAULT   false

Definition at line 80 of file Process.cpp.

◆ ENABLE_MEMORY_CACHING

#define ENABLE_MEMORY_CACHING

Definition at line 77 of file Process.cpp.

◆ USE_ALLOCATE_MEMORY_CACHE

#define USE_ALLOCATE_MEMORY_CACHE   1

Definition at line 2343 of file Process.cpp.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
ePropertyDisableMemCache 
ePropertyExtraStartCommand 
ePropertyIgnoreBreakpointsInExpressions 
ePropertyUnwindOnErrorInExpressions 
ePropertyPythonOSPluginPath 
ePropertyStopOnSharedLibraryEvents 
ePropertyDetachKeepsStopped 
ePropertyMemCacheLineSize 
ePropertyWarningOptimization 
ePropertyStopOnExec 
ePropertyUtilityExpressionTimeout 

Definition at line 153 of file Process.cpp.

Function Documentation

◆ GetExpressionTimeout()

static Timeout<std::micro> GetExpressionTimeout ( const EvaluateExpressionOptions options,
bool  before_first_timeout 
)
static

◆ GetOneThreadExpressionTimeout()

static microseconds GetOneThreadExpressionTimeout ( const EvaluateExpressionOptions options)
static

◆ HandleStoppedEvent()

static llvm::Optional<ExpressionResults> HandleStoppedEvent ( Thread thread,
const ThreadPlanSP &  thread_plan_sp,
RestorePlanState &  restorer,
const EventSP &  event_sp,
EventSP &  event_to_broadcast_sp,
const EvaluateExpressionOptions options,
bool  handle_interrupts 
)
static

Variable Documentation

◆ g_process_launch_options

constexpr OptionDefinition g_process_launch_options[]
static

◆ g_properties

constexpr PropertyDefinition g_properties[]
static

◆ g_resume_sync_name

const char* g_resume_sync_name = "lldb.Process.ResumeSynchronous.hijack"
static