mirror of
https://github.com/azahar-emu/dynarmic
synced 2025-11-07 07:29:59 +01:00
parent
32615d0eff
commit
f32921d493
@ -121,7 +121,16 @@ bool ArmTranslatorVisitor::arm_UXTB(Cond cond, Reg d, SignExtendRotation rotate,
|
|||||||
}
|
}
|
||||||
|
|
||||||
bool ArmTranslatorVisitor::arm_UXTB16(Cond cond, Reg d, SignExtendRotation rotate, Reg m) {
|
bool ArmTranslatorVisitor::arm_UXTB16(Cond cond, Reg d, SignExtendRotation rotate, Reg m) {
|
||||||
return InterpretThisInstruction();
|
if (d == Reg::PC || m == Reg::PC)
|
||||||
|
return UnpredictableInstruction();
|
||||||
|
if (ConditionPassed(cond)) {
|
||||||
|
auto rotated = SignZeroExtendRor(m, rotate);
|
||||||
|
auto lower_half = ir.ZeroExtendByteToWord(ir.LeastSignificantByte(rotated));
|
||||||
|
auto upper_half = ir.And(rotated, ir.Imm32(0x00FF0000));
|
||||||
|
auto result = ir.Or(lower_half, upper_half);
|
||||||
|
ir.SetRegister(d, result);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ArmTranslatorVisitor::arm_UXTH(Cond cond, Reg d, SignExtendRotation rotate, Reg m) {
|
bool ArmTranslatorVisitor::arm_UXTH(Cond cond, Reg d, SignExtendRotation rotate, Reg m) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user