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_PLUGINS_PROCESS_UTIILTY_NATIVE_REGISTER_CONTEXT_REGISTER_INFO
10 #define LLDB_PLUGINS_PROCESS_UTIILTY_NATIVE_REGISTER_CONTEXT_REGISTER_INFO
11 
12 #include <memory>
13 
14 #include "RegisterInfoInterface.h"
16 
17 namespace lldb_private {
19 public:
20  ///
21  /// Construct a NativeRegisterContextRegisterInfo, taking ownership
22  /// of the register_info_interface pointer.
23  ///
25  NativeThreadProtocol &thread,
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 
36 private:
37  std::unique_ptr<RegisterInfoInterface> m_register_info_interface_up;
38 };
39 }
40 #endif
Enumerations for broadcasting.
Definition: SBLaunchInfo.h:14
RegisterInfo interface to patch RegisterInfo structure for archs.
const RegisterInfo * GetRegisterInfoAtIndex(uint32_t reg_index) const override
NativeRegisterContextRegisterInfo(NativeThreadProtocol &thread, RegisterInfoInterface *register_info_interface)
Construct a NativeRegisterContextRegisterInfo, taking ownership of the register_info_interface pointe...