1317027Sdim//===-- NativeRegisterContextNetBSD.cpp -------------------------*- C++ -*-===// 2317027Sdim// 3353358Sdim// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4353358Sdim// See https://llvm.org/LICENSE.txt for license information. 5353358Sdim// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6317027Sdim// 7317027Sdim//===----------------------------------------------------------------------===// 8317027Sdim 9317027Sdim#include "NativeRegisterContextNetBSD.h" 10317027Sdim 11360784Sdim#include "Plugins/Process/NetBSD/NativeProcessNetBSD.h" 12360784Sdim 13317027Sdim#include "lldb/Host/common/NativeProcessProtocol.h" 14317027Sdim 15317027Sdimusing namespace lldb_private; 16317027Sdimusing namespace lldb_private::process_netbsd; 17317027Sdim 18317027Sdim// clang-format off 19317027Sdim#include <sys/types.h> 20317027Sdim#include <sys/ptrace.h> 21317027Sdim// clang-format on 22317027Sdim 23317027SdimNativeRegisterContextNetBSD::NativeRegisterContextNetBSD( 24327952Sdim NativeThreadProtocol &native_thread, 25317027Sdim RegisterInfoInterface *reg_info_interface_p) 26327952Sdim : NativeRegisterContextRegisterInfo(native_thread, 27317027Sdim reg_info_interface_p) {} 28317027Sdim 29353358SdimStatus NativeRegisterContextNetBSD::DoRegisterSet(int ptrace_req, void *buf) { 30353358Sdim return NativeProcessNetBSD::PtraceWrapper(ptrace_req, GetProcessPid(), buf, 31317027Sdim m_thread.GetID()); 32317027Sdim} 33317027Sdim 34317027SdimNativeProcessNetBSD &NativeRegisterContextNetBSD::GetProcess() { 35321238Sdim return static_cast<NativeProcessNetBSD &>(m_thread.GetProcess()); 36317027Sdim} 37317027Sdim 38317027Sdim::pid_t NativeRegisterContextNetBSD::GetProcessPid() { 39321238Sdim return GetProcess().GetID(); 40317027Sdim} 41