types: Formatting for CoprogReg
This commit is contained in:
parent
d8a37e287c
commit
b3ae57619d
2 changed files with 17 additions and 1 deletions
|
@ -15,7 +15,7 @@ namespace Arm {
|
|||
|
||||
const char* CondToString(Cond cond, bool explicit_al) {
|
||||
constexpr std::array<const char*, 15> cond_strs = {
|
||||
"eq", "ne", "cs", "cc", "mi", "pl", "vs", "vc", "hi", "ls", "ge", "lt", "gt", "le", "al"
|
||||
"eq", "ne", "cs", "cc", "mi", "pl", "vs", "vc", "hi", "ls", "ge", "lt", "gt", "le", "al"
|
||||
};
|
||||
return (!explicit_al && cond == Cond::AL) ? "" : cond_strs.at(static_cast<size_t>(cond));
|
||||
}
|
||||
|
@ -37,6 +37,13 @@ const char* ExtRegToString(ExtReg reg) {
|
|||
return reg_strs.at(static_cast<size_t>(reg));
|
||||
}
|
||||
|
||||
const char* CoprocRegToString(CoprocReg reg) {
|
||||
constexpr std::array<const char*, 16> reg_strs = {
|
||||
"c0", "c1", "c2", "c3", "c4", "c5", "c6", "c7", "c8", "c9", "c10", "c11", "c12", "c13", "c14", "c15"
|
||||
};
|
||||
return reg_strs.at(static_cast<size_t>(reg));
|
||||
}
|
||||
|
||||
std::string RegListToString(RegList reg_list) {
|
||||
std::string ret = "";
|
||||
bool first_reg = true;
|
||||
|
@ -61,6 +68,11 @@ std::ostream& operator<<(std::ostream& o, ExtReg reg) {
|
|||
return o;
|
||||
}
|
||||
|
||||
std::ostream& operator<<(std::ostream& o, CoprocReg reg) {
|
||||
o << CoprocRegToString(reg);
|
||||
return o;
|
||||
}
|
||||
|
||||
std::ostream& operator<<(std::ostream& o, RegList reg_list) {
|
||||
o << RegListToString(reg_list);
|
||||
return o;
|
||||
|
|
|
@ -10,6 +10,8 @@
|
|||
#include <string>
|
||||
#include <utility>
|
||||
|
||||
#include <dynarmic/coprocessor_util.h>
|
||||
|
||||
#include "common/assert.h"
|
||||
#include "common/common_types.h"
|
||||
|
||||
|
@ -66,10 +68,12 @@ enum class SignExtendRotation {
|
|||
const char* CondToString(Cond cond, bool explicit_al = false);
|
||||
const char* RegToString(Reg reg);
|
||||
const char* ExtRegToString(ExtReg reg);
|
||||
const char* CoprocRegToString(CoprocReg reg);
|
||||
std::string RegListToString(RegList reg_list);
|
||||
|
||||
std::ostream& operator<<(std::ostream& o, Reg reg);
|
||||
std::ostream& operator<<(std::ostream& o, ExtReg reg);
|
||||
std::ostream& operator<<(std::ostream& o, CoprocReg reg);
|
||||
std::ostream& operator<<(std::ostream& o, RegList reg_list);
|
||||
|
||||
constexpr bool IsSingleExtReg(ExtReg reg) {
|
||||
|
|
Loading…
Reference in a new issue