llvm/lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp

//===-- NativeThreadLinux.cpp ---------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

#include "NativeThreadLinux.h"

#include <csignal>
#include <sstream>

#include "NativeProcessLinux.h"
#include "NativeRegisterContextLinux.h"
#include "SingleStepCheck.h"

#include "lldb/Host/HostNativeThread.h"
#include "lldb/Host/linux/Ptrace.h"
#include "lldb/Host/linux/Support.h"
#include "lldb/Utility/LLDBAssert.h"
#include "lldb/Utility/LLDBLog.h"
#include "lldb/Utility/Log.h"
#include "lldb/Utility/State.h"
#include "lldb/lldb-enumerations.h"

#include "llvm/ADT/SmallString.h"

#include "Plugins/Process/POSIX/CrashReason.h"
#include "Plugins/Process/Utility/MemoryTagManagerAArch64MTE.h"

#include <sys/syscall.h>
// Try to define a macro to encapsulate the tgkill syscall
#define tgkill(pid, tid, sig)

usingnamespacelldb;
usingnamespacelldb_private;
usingnamespacelldb_private::process_linux;

namespace {
void LogThreadStopInfo(Log &log, const ThreadStopInfo &stop_info,
                       const char *const header) {}
}

NativeThreadLinux::NativeThreadLinux(NativeProcessLinux &process,
                                     lldb::tid_t tid)
    :{}

std::string NativeThreadLinux::GetName() {}

lldb::StateType NativeThreadLinux::GetState() {}

bool NativeThreadLinux::GetStopReason(ThreadStopInfo &stop_info,
                                      std::string &description) {}

Status NativeThreadLinux::SetWatchpoint(lldb::addr_t addr, size_t size,
                                        uint32_t watch_flags, bool hardware) {}

Status NativeThreadLinux::RemoveWatchpoint(lldb::addr_t addr) {}

Status NativeThreadLinux::SetHardwareBreakpoint(lldb::addr_t addr,
                                                size_t size) {}

Status NativeThreadLinux::RemoveHardwareBreakpoint(lldb::addr_t addr) {}

Status NativeThreadLinux::Resume(uint32_t signo) {}

Status NativeThreadLinux::SingleStep(uint32_t signo) {}

void NativeThreadLinux::SetStoppedBySignal(uint32_t signo,
                                           const siginfo_t *info) {}

void NativeThreadLinux::AnnotateSyncTagCheckFault(lldb::addr_t fault_addr) {}

bool NativeThreadLinux::IsStopped(int *signo) {}

void NativeThreadLinux::SetStopped() {}

void NativeThreadLinux::SetStoppedByExec() {}

void NativeThreadLinux::SetStoppedByBreakpoint() {}

void NativeThreadLinux::SetStoppedByWatchpoint(uint32_t wp_index) {}

bool NativeThreadLinux::IsStoppedAtBreakpoint() {}

bool NativeThreadLinux::IsStoppedAtWatchpoint() {}

void NativeThreadLinux::SetStoppedByTrace() {}

void NativeThreadLinux::SetStoppedByFork(bool is_vfork, lldb::pid_t child_pid) {}

void NativeThreadLinux::SetStoppedByVForkDone() {}

void NativeThreadLinux::SetStoppedWithNoReason() {}

void NativeThreadLinux::SetStoppedByProcessorTrace(
    llvm::StringRef description) {}

void NativeThreadLinux::SetExited() {}

Status NativeThreadLinux::RequestStop() {}

void NativeThreadLinux::MaybeLogStateChange(lldb::StateType new_state) {}

NativeProcessLinux &NativeThreadLinux::GetProcess() {}

const NativeProcessLinux &NativeThreadLinux::GetProcess() const {}

llvm::Expected<std::unique_ptr<llvm::MemoryBuffer>>
NativeThreadLinux::GetSiginfo() const {}