Add support for the APSR.Q flag

This commit is contained in:
Tillmann Karras 2016-08-06 22:04:52 +01:00 committed by MerryMage
parent 11e0688e5f
commit ccb2aa96a5
4 changed files with 21 additions and 0 deletions

View file

@ -118,6 +118,10 @@ void IREmitter::SetVFlag(const IR::Value& value) {
Inst(IR::Opcode::SetVFlag, {value});
}
void IREmitter::OrQFlag(const IR::Value& value) {
Inst(IR::Opcode::OrQFlag, {value});
}
IR::Value IREmitter::Pack2x32To1x64(const IR::Value& lo, const IR::Value& hi)
{
return Inst(IR::Opcode::Pack2x32To1x64, {lo, hi});

View file

@ -55,6 +55,7 @@ public:
void SetZFlag(const IR::Value& value);
void SetCFlag(const IR::Value& value);
void SetVFlag(const IR::Value& value);
void OrQFlag(const IR::Value& value);
IR::Value Pack2x32To1x64(const IR::Value& lo, const IR::Value& hi);
IR::Value LeastSignificantWord(const IR::Value& value);

View file

@ -18,6 +18,7 @@ OPCODE(GetCFlag, T::U1,
OPCODE(SetCFlag, T::Void, T::U1 )
OPCODE(GetVFlag, T::U1, )
OPCODE(SetVFlag, T::Void, T::U1 )
OPCODE(OrQFlag, T::Void, T::U1 )
OPCODE(BXWritePC, T::Void, T::U32 )
OPCODE(CallSupervisor, T::Void, T::U32 )