LLDB mainline
NativeRegisterContextRegisterInfo.h
Go to the documentation of this file.
1//===-- NativeRegisterContextRegisterInfo.h ---------------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLDB_SOURCE_PLUGINS_PROCESS_UTILITY_NATIVEREGISTERCONTEXTREGISTERINFO_H
10#define LLDB_SOURCE_PLUGINS_PROCESS_UTILITY_NATIVEREGISTERCONTEXTREGISTERINFO_H
11
12#include <memory>
13
16
17namespace lldb_private {
19public:
20 ///
21 /// Construct a NativeRegisterContextRegisterInfo, taking ownership
22 /// of the register_info_interface pointer.
23 ///
26 RegisterInfoInterface *register_info_interface);
27
28 uint32_t GetRegisterCount() const override;
29
30 uint32_t GetUserRegisterCount() const override;
31
32 const RegisterInfo *GetRegisterInfoAtIndex(uint32_t reg_index) const override;
33
35
36protected:
37 std::unique_ptr<RegisterInfoInterface> m_register_info_interface_up;
38};
39}
40#endif
const RegisterInfo * GetRegisterInfoAtIndex(uint32_t reg_index) const override
std::unique_ptr< RegisterInfoInterface > m_register_info_interface_up
RegisterInfo interface to patch RegisterInfo structure for archs.
A class that represents a running process on the host machine.
Every register is described in detail including its name, alternate name (optional),...