mirror of
https://github.com/ryujinx-mirror/ryujinx.git
synced 2024-10-02 16:50:20 -07:00

* Implement a new JIT for Arm devices * Auto-format * Make a lot of Assembler members read-only * More read-only * Fix more warnings * ObjectDisposedException.ThrowIf * New JIT cache for platforms that enforce W^X, currently unused * Remove unused using * Fix assert * Pass memory manager type around * Safe memory manager mode support + other improvements * Actual safe memory manager mode masking support * PR feedback
26 lines
940 B
C#
26 lines
940 B
C#
using Ryujinx.Cpu.LightningJit.CodeGen;
|
|
|
|
namespace Ryujinx.Cpu.LightningJit.Arm32.Target.Arm64
|
|
{
|
|
static class InstEmitDivide
|
|
{
|
|
public static void Sdiv(CodeGenContext context, uint rd, uint rn, uint rm)
|
|
{
|
|
Operand rdOperand = InstEmitCommon.GetOutputGpr(context, rd);
|
|
Operand rnOperand = InstEmitCommon.GetInputGpr(context, rn);
|
|
Operand rmOperand = InstEmitCommon.GetInputGpr(context, rm);
|
|
|
|
context.Arm64Assembler.Sdiv(rdOperand, rnOperand, rmOperand);
|
|
}
|
|
|
|
public static void Udiv(CodeGenContext context, uint rd, uint rn, uint rm)
|
|
{
|
|
Operand rdOperand = InstEmitCommon.GetOutputGpr(context, rd);
|
|
Operand rnOperand = InstEmitCommon.GetInputGpr(context, rn);
|
|
Operand rmOperand = InstEmitCommon.GetInputGpr(context, rm);
|
|
|
|
context.Arm64Assembler.Udiv(rdOperand, rnOperand, rmOperand);
|
|
}
|
|
}
|
|
}
|