1 //===-- RegisterContextFreeBSD_powerpc.h -------------------------*- C++
2 //-*-===//
3 //
4 //                     The LLVM Compiler Infrastructure
5 //
6 // This file is distributed under the University of Illinois Open Source
7 // License. See LICENSE.TXT for details.
8 //
9 //===----------------------------------------------------------------------===//
10 
11 #ifndef liblldb_RegisterContextFreeBSD_powerpc_h_
12 #define liblldb_RegisterContextFreeBSD_powerpc_h_
13 
14 #include "RegisterInfoInterface.h"
15 
16 class RegisterContextFreeBSD_powerpc
17     : public lldb_private::RegisterInfoInterface {
18 public:
19   RegisterContextFreeBSD_powerpc(const lldb_private::ArchSpec &target_arch);
20   ~RegisterContextFreeBSD_powerpc() override;
21 
22   size_t GetGPRSize() const override;
23 
24   const lldb_private::RegisterInfo *GetRegisterInfo() const override;
25 
26   uint32_t GetRegisterCount() const override;
27 };
28 
29 class RegisterContextFreeBSD_powerpc32 : public RegisterContextFreeBSD_powerpc {
30 public:
31   RegisterContextFreeBSD_powerpc32(const lldb_private::ArchSpec &target_arch);
32   ~RegisterContextFreeBSD_powerpc32() override;
33 
34   size_t GetGPRSize() const override;
35 
36   const lldb_private::RegisterInfo *GetRegisterInfo() const override;
37 
38   uint32_t GetRegisterCount() const override;
39 };
40 
41 class RegisterContextFreeBSD_powerpc64 : public RegisterContextFreeBSD_powerpc {
42 public:
43   RegisterContextFreeBSD_powerpc64(const lldb_private::ArchSpec &target_arch);
44   ~RegisterContextFreeBSD_powerpc64() override;
45 
46   size_t GetGPRSize() const override;
47 
48   const lldb_private::RegisterInfo *GetRegisterInfo() const override;
49 
50   uint32_t GetRegisterCount() const override;
51 };
52 
53 #endif // liblldb_RegisterContextFreeBSD_powerpc_h_
54