Path: blob/main/contrib/llvm-project/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD.h
96380 views
//===-- NativeRegisterContextNetBSD.h ---------------------------*- C++ -*-===//1//2// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.3// See https://llvm.org/LICENSE.txt for license information.4// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception5//6//===----------------------------------------------------------------------===//78#ifndef lldb_NativeRegisterContextNetBSD_h9#define lldb_NativeRegisterContextNetBSD_h1011#include "lldb/Host/common/NativeThreadProtocol.h"1213#include "Plugins/Process/Utility/NativeRegisterContextRegisterInfo.h"1415namespace lldb_private {16namespace process_netbsd {1718class NativeProcessNetBSD;1920class NativeRegisterContextNetBSD21: public virtual NativeRegisterContextRegisterInfo {22public:23// This function is implemented in the NativeRegisterContextNetBSD_*24// subclasses to create a new instance of the host specific25// NativeRegisterContextNetBSD. The implementations can't collide as only one26// NativeRegisterContextNetBSD_* variant should be compiled into the final27// executable.28static NativeRegisterContextNetBSD *29CreateHostNativeRegisterContextNetBSD(const ArchSpec &target_arch,30NativeThreadProtocol &native_thread);31virtual llvm::Error32CopyHardwareWatchpointsFrom(NativeRegisterContextNetBSD &source) = 0;3334protected:35Status DoRegisterSet(int req, void *buf);36virtual NativeProcessNetBSD &GetProcess();37virtual ::pid_t GetProcessPid();38};3940} // namespace process_netbsd41} // namespace lldb_private4243#endif // #ifndef lldb_NativeRegisterContextNetBSD_h444546