mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 14:19:46 -06:00
Arm64Emitter: Make SystemHint enum an enum class
Avoids polluting the namespace and makes the members strongly typed.
This commit is contained in:
@ -964,7 +964,7 @@ FixupBranch ARM64XEmitter::CBZ(ARM64Reg Rt)
|
|||||||
branch.ptr = m_code;
|
branch.ptr = m_code;
|
||||||
branch.type = FixupBranch::Type::CBZ;
|
branch.type = FixupBranch::Type::CBZ;
|
||||||
branch.reg = Rt;
|
branch.reg = Rt;
|
||||||
HINT(HINT_NOP);
|
HINT(SystemHint::NOP);
|
||||||
return branch;
|
return branch;
|
||||||
}
|
}
|
||||||
FixupBranch ARM64XEmitter::CBNZ(ARM64Reg Rt)
|
FixupBranch ARM64XEmitter::CBNZ(ARM64Reg Rt)
|
||||||
@ -973,7 +973,7 @@ FixupBranch ARM64XEmitter::CBNZ(ARM64Reg Rt)
|
|||||||
branch.ptr = m_code;
|
branch.ptr = m_code;
|
||||||
branch.type = FixupBranch::Type::CBNZ;
|
branch.type = FixupBranch::Type::CBNZ;
|
||||||
branch.reg = Rt;
|
branch.reg = Rt;
|
||||||
HINT(HINT_NOP);
|
HINT(SystemHint::NOP);
|
||||||
return branch;
|
return branch;
|
||||||
}
|
}
|
||||||
FixupBranch ARM64XEmitter::B(CCFlags cond)
|
FixupBranch ARM64XEmitter::B(CCFlags cond)
|
||||||
@ -982,7 +982,7 @@ FixupBranch ARM64XEmitter::B(CCFlags cond)
|
|||||||
branch.ptr = m_code;
|
branch.ptr = m_code;
|
||||||
branch.type = FixupBranch::Type::BConditional;
|
branch.type = FixupBranch::Type::BConditional;
|
||||||
branch.cond = cond;
|
branch.cond = cond;
|
||||||
HINT(HINT_NOP);
|
HINT(SystemHint::NOP);
|
||||||
return branch;
|
return branch;
|
||||||
}
|
}
|
||||||
FixupBranch ARM64XEmitter::TBZ(ARM64Reg Rt, u8 bit)
|
FixupBranch ARM64XEmitter::TBZ(ARM64Reg Rt, u8 bit)
|
||||||
@ -992,7 +992,7 @@ FixupBranch ARM64XEmitter::TBZ(ARM64Reg Rt, u8 bit)
|
|||||||
branch.type = FixupBranch::Type::TBZ;
|
branch.type = FixupBranch::Type::TBZ;
|
||||||
branch.reg = Rt;
|
branch.reg = Rt;
|
||||||
branch.bit = bit;
|
branch.bit = bit;
|
||||||
HINT(HINT_NOP);
|
HINT(SystemHint::NOP);
|
||||||
return branch;
|
return branch;
|
||||||
}
|
}
|
||||||
FixupBranch ARM64XEmitter::TBNZ(ARM64Reg Rt, u8 bit)
|
FixupBranch ARM64XEmitter::TBNZ(ARM64Reg Rt, u8 bit)
|
||||||
@ -1002,7 +1002,7 @@ FixupBranch ARM64XEmitter::TBNZ(ARM64Reg Rt, u8 bit)
|
|||||||
branch.type = FixupBranch::Type::TBNZ;
|
branch.type = FixupBranch::Type::TBNZ;
|
||||||
branch.reg = Rt;
|
branch.reg = Rt;
|
||||||
branch.bit = bit;
|
branch.bit = bit;
|
||||||
HINT(HINT_NOP);
|
HINT(SystemHint::NOP);
|
||||||
return branch;
|
return branch;
|
||||||
}
|
}
|
||||||
FixupBranch ARM64XEmitter::B()
|
FixupBranch ARM64XEmitter::B()
|
||||||
@ -1010,7 +1010,7 @@ FixupBranch ARM64XEmitter::B()
|
|||||||
FixupBranch branch{};
|
FixupBranch branch{};
|
||||||
branch.ptr = m_code;
|
branch.ptr = m_code;
|
||||||
branch.type = FixupBranch::Type::B;
|
branch.type = FixupBranch::Type::B;
|
||||||
HINT(HINT_NOP);
|
HINT(SystemHint::NOP);
|
||||||
return branch;
|
return branch;
|
||||||
}
|
}
|
||||||
FixupBranch ARM64XEmitter::BL()
|
FixupBranch ARM64XEmitter::BL()
|
||||||
@ -1018,7 +1018,7 @@ FixupBranch ARM64XEmitter::BL()
|
|||||||
FixupBranch branch{};
|
FixupBranch branch{};
|
||||||
branch.ptr = m_code;
|
branch.ptr = m_code;
|
||||||
branch.type = FixupBranch::Type::BL;
|
branch.type = FixupBranch::Type::BL;
|
||||||
HINT(HINT_NOP);
|
HINT(SystemHint::NOP);
|
||||||
return branch;
|
return branch;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1239,7 +1239,7 @@ void ARM64XEmitter::CNTVCT(Arm64Gen::ARM64Reg Rt)
|
|||||||
|
|
||||||
void ARM64XEmitter::HINT(SystemHint op)
|
void ARM64XEmitter::HINT(SystemHint op)
|
||||||
{
|
{
|
||||||
EncodeSystemInst(0, 3, 2, 0, op, WSP);
|
EncodeSystemInst(0, 3, 2, 0, static_cast<u32>(op), WSP);
|
||||||
}
|
}
|
||||||
void ARM64XEmitter::CLREX()
|
void ARM64XEmitter::CLREX()
|
||||||
{
|
{
|
||||||
|
@ -354,14 +354,14 @@ enum PStateField
|
|||||||
FIELD_FPSR = 0x341,
|
FIELD_FPSR = 0x341,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum SystemHint
|
enum class SystemHint
|
||||||
{
|
{
|
||||||
HINT_NOP = 0,
|
NOP,
|
||||||
HINT_YIELD,
|
YIELD,
|
||||||
HINT_WFE,
|
WFE,
|
||||||
HINT_WFI,
|
WFI,
|
||||||
HINT_SEV,
|
SEV,
|
||||||
HINT_SEVL,
|
SEVL,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum BarrierType
|
enum BarrierType
|
||||||
|
@ -322,7 +322,7 @@ bool JitArm64::HandleFastmemFault(uintptr_t access_address, SContext* ctx)
|
|||||||
|
|
||||||
const u32 num_insts_max = fastmem_area_length / 4 - 1;
|
const u32 num_insts_max = fastmem_area_length / 4 - 1;
|
||||||
for (u32 i = 0; i < num_insts_max; ++i)
|
for (u32 i = 0; i < num_insts_max; ++i)
|
||||||
emitter.HINT(HINT_NOP);
|
emitter.HINT(SystemHint::NOP);
|
||||||
|
|
||||||
m_fault_to_handler.erase(slow_handler_iter);
|
m_fault_to_handler.erase(slow_handler_iter);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user