mirror of
https://git.suyu.dev/suyu/dynarmic.git
synced 2026-03-09 15:32:56 +00:00
ir: Add A64-specific opcodes for getting and setting raw NZCV values
This will be necessary to implement the flag manipulation and flag format instructions.
This commit is contained in:
@@ -29,6 +29,14 @@ IR::U1 IREmitter::GetCFlag() {
|
||||
return Inst<IR::U1>(Opcode::A64GetCFlag);
|
||||
}
|
||||
|
||||
IR::U32 IREmitter::GetNZCVRaw() {
|
||||
return Inst<IR::U32>(Opcode::A64GetNZCVRaw);
|
||||
}
|
||||
|
||||
void IREmitter::SetNZCVRaw(IR::U32 value) {
|
||||
Inst(Opcode::A64SetNZCVRaw, value);
|
||||
}
|
||||
|
||||
void IREmitter::SetNZCV(const IR::NZCV& nzcv) {
|
||||
Inst(Opcode::A64SetNZCV, nzcv);
|
||||
}
|
||||
|
||||
@@ -36,6 +36,8 @@ public:
|
||||
|
||||
void SetCheckBit(const IR::U1& value);
|
||||
IR::U1 GetCFlag();
|
||||
IR::U32 GetNZCVRaw();
|
||||
void SetNZCVRaw(IR::U32 value);
|
||||
void SetNZCV(const IR::NZCV& nzcv);
|
||||
void OrQC(const IR::U1& value);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user