LLDB  mainline
Macros | Functions
NativeProcessLinux.cpp File Reference
#include "NativeProcessLinux.h"
#include <errno.h>
#include <stdint.h>
#include <string.h>
#include <unistd.h>
#include <fstream>
#include <mutex>
#include <sstream>
#include <string>
#include <unordered_map>
#include "lldb/Core/EmulateInstruction.h"
#include "lldb/Core/ModuleSpec.h"
#include "lldb/Host/Host.h"
#include "lldb/Host/HostProcess.h"
#include "lldb/Host/ProcessLaunchInfo.h"
#include "lldb/Host/PseudoTerminal.h"
#include "lldb/Host/ThreadLauncher.h"
#include "lldb/Host/common/NativeRegisterContext.h"
#include "lldb/Host/linux/Ptrace.h"
#include "lldb/Host/linux/Uio.h"
#include "lldb/Host/posix/ProcessLauncherPosixFork.h"
#include "lldb/Symbol/ObjectFile.h"
#include "lldb/Target/Process.h"
#include "lldb/Target/Target.h"
#include "lldb/Utility/LLDBAssert.h"
#include "lldb/Utility/RegisterValue.h"
#include "lldb/Utility/State.h"
#include "lldb/Utility/Status.h"
#include "lldb/Utility/StringExtractor.h"
#include "llvm/Support/Errno.h"
#include "llvm/Support/FileSystem.h"
#include "llvm/Support/Threading.h"
#include "NativeThreadLinux.h"
#include "Plugins/Process/POSIX/ProcessPOSIXLog.h"
#include "Plugins/Process/Utility/LinuxProcMaps.h"
#include "Procfs.h"
#include <linux/unistd.h>
#include <sys/socket.h>
#include <sys/syscall.h>
#include <sys/types.h>
#include <sys/user.h>
#include <sys/wait.h>
Include dependency graph for NativeProcessLinux.cpp:

Go to the source code of this file.

Macros

#define TRAP_HWBKPT   4
 

Functions

static bool ProcessVmReadvSupported ()
 
static Status EnsureFDFlags (int fd, int flags)
 
static size_t ReadMemoryCallback (EmulateInstruction *instruction, void *baton, const EmulateInstruction::Context &context, lldb::addr_t addr, void *dst, size_t length)
 
static bool ReadRegisterCallback (EmulateInstruction *instruction, void *baton, const RegisterInfo *reg_info, RegisterValue &reg_value)
 
static bool WriteRegisterCallback (EmulateInstruction *instruction, void *baton, const EmulateInstruction::Context &context, const RegisterInfo *reg_info, const RegisterValue &reg_value)
 
static size_t WriteMemoryCallback (EmulateInstruction *instruction, void *baton, const EmulateInstruction::Context &context, lldb::addr_t addr, const void *dst, size_t length)
 
static lldb::addr_t ReadFlags (NativeRegisterContext &regsiter_context)
 

Macro Definition Documentation

◆ TRAP_HWBKPT

#define TRAP_HWBKPT   4

Function Documentation

◆ EnsureFDFlags()

static Status EnsureFDFlags ( int  fd,
int  flags 
)
static

◆ ProcessVmReadvSupported()

static bool ProcessVmReadvSupported ( )
static

◆ ReadFlags()

static lldb::addr_t ReadFlags ( NativeRegisterContext regsiter_context)
static

◆ ReadMemoryCallback()

static size_t ReadMemoryCallback ( EmulateInstruction instruction,
void *  baton,
const EmulateInstruction::Context context,
lldb::addr_t  addr,
void *  dst,
size_t  length 
)
static

Definition at line 881 of file NativeProcessLinux.cpp.

Referenced by ReadFlags().

◆ ReadRegisterCallback()

static bool ReadRegisterCallback ( EmulateInstruction instruction,
void *  baton,
const RegisterInfo *  reg_info,
RegisterValue reg_value 
)
static

Definition at line 891 of file NativeProcessLinux.cpp.

References lldb::eRegisterKindDWARF, and lldb_private::Status::Success().

Referenced by ReadFlags().

◆ WriteMemoryCallback()

static size_t WriteMemoryCallback ( EmulateInstruction instruction,
void *  baton,
const EmulateInstruction::Context context,
lldb::addr_t  addr,
const void *  dst,
size_t  length 
)
static

Definition at line 928 of file NativeProcessLinux.cpp.

Referenced by ReadFlags().

◆ WriteRegisterCallback()

static bool WriteRegisterCallback ( EmulateInstruction instruction,
void *  baton,
const EmulateInstruction::Context context,
const RegisterInfo *  reg_info,
const RegisterValue reg_value 
)
static

Definition at line 918 of file NativeProcessLinux.cpp.

References lldb::eRegisterKindDWARF.

Referenced by ReadFlags().