brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · 7e569dc Raw
37 lines · c
1//===-- RegisterInfoAndSetInterface.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-exception6//7//===----------------------------------------------------------------------===//8 9#ifndef LLDB_SOURCE_PLUGINS_PROCESS_UTILITY_REGISTERINFOANDSETINTERFACE_H10#define LLDB_SOURCE_PLUGINS_PROCESS_UTILITY_REGISTERINFOANDSETINTERFACE_H11 12#include "RegisterInfoInterface.h"13 14#include "lldb/Utility/ArchSpec.h"15#include "lldb/lldb-private-types.h"16#include <vector>17 18namespace lldb_private {19 20class RegisterInfoAndSetInterface : public RegisterInfoInterface {21public:22  RegisterInfoAndSetInterface(const lldb_private::ArchSpec &target_arch)23      : RegisterInfoInterface(target_arch) {}24 25  virtual size_t GetFPRSize() const = 0;26 27  virtual const lldb_private::RegisterSet *28  GetRegisterSet(size_t reg_set) const = 0;29 30  virtual size_t GetRegisterSetCount() const = 0;31 32  virtual size_t GetRegisterSetFromRegisterIndex(uint32_t reg_index) const = 0;33};34} // namespace lldb_private35 36#endif37