1 //===-- RegisterContextLinux_mips64.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 #if defined(__mips__) 11 12 #ifndef liblldb_RegisterContextLinux_mips64_H_ 13 #define liblldb_RegisterContextLinux_mips64_H_ 14 15 #include "RegisterInfoInterface.h" 16 #include "lldb/lldb-private.h" 17 18 class RegisterContextLinux_mips64 : public lldb_private::RegisterInfoInterface { 19 public: 20 RegisterContextLinux_mips64(const lldb_private::ArchSpec &target_arch, 21 bool msa_present = true); 22 23 size_t GetGPRSize() const override; 24 25 const lldb_private::RegisterInfo *GetRegisterInfo() const override; 26 27 uint32_t GetRegisterCount() const override; 28 29 uint32_t GetUserRegisterCount() const override; 30 31 private: 32 const lldb_private::RegisterInfo *m_register_info_p; 33 uint32_t m_register_info_count; 34 uint32_t m_user_register_count; 35 }; 36 37 #endif 38 39 #endif 40