]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.h
MFV r293415:
[FreeBSD/FreeBSD.git] / contrib / llvm / tools / lldb / source / Plugins / Process / Utility / RegisterContextLinux_x86_64.h
1 //===-- RegisterContextLinux_x86_64.h ---------------------------*- C++ -*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9
10 #ifndef liblldb_RegisterContextLinux_x86_64_H_
11 #define liblldb_RegisterContextLinux_x86_64_H_
12
13 #include "RegisterContextPOSIX.h"
14
15 class RegisterContextLinux_x86_64
16     : public lldb_private::RegisterInfoInterface
17 {
18 public:
19     RegisterContextLinux_x86_64(const lldb_private::ArchSpec &target_arch);
20
21     size_t
22     GetGPRSize() const override;
23
24     const lldb_private::RegisterInfo *
25     GetRegisterInfo() const override;
26
27     uint32_t
28     GetRegisterCount () const override;
29
30     uint32_t
31     GetUserRegisterCount () const override;
32
33 private:
34     const lldb_private::RegisterInfo *m_register_info_p;
35     uint32_t m_register_info_count;
36     uint32_t m_user_register_count;
37 };
38
39 #endif