mirror of
https://git.zaroz.cloud/nintendo-back-up/Ryujinx.git
synced 2025-12-20 01:12:41 +00:00
Implement a new JIT for Arm devices (#6057)
* 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
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
namespace Ryujinx.Cpu.LightningJit.Arm32.Target.Arm64
|
||||
{
|
||||
static class InstEmitNeonBit
|
||||
{
|
||||
public static void Vcls(CodeGenContext context, uint rd, uint rm, uint size, uint q)
|
||||
{
|
||||
InstEmitNeonCommon.EmitVectorUnary(context, rd, rm, size, q, context.Arm64Assembler.Cls);
|
||||
}
|
||||
|
||||
public static void Vclz(CodeGenContext context, uint rd, uint rm, uint size, uint q)
|
||||
{
|
||||
InstEmitNeonCommon.EmitVectorUnary(context, rd, rm, size, q, context.Arm64Assembler.Clz);
|
||||
}
|
||||
|
||||
public static void Vcnt(CodeGenContext context, uint rd, uint rm, uint size, uint q)
|
||||
{
|
||||
InstEmitNeonCommon.EmitVectorUnary(context, rd, rm, size, q, context.Arm64Assembler.Cnt);
|
||||
}
|
||||
|
||||
public static void Vrev16(CodeGenContext context, uint rd, uint rm, uint size, uint q)
|
||||
{
|
||||
InstEmitNeonCommon.EmitVectorUnary(context, rd, rm, size, q, context.Arm64Assembler.Rev16);
|
||||
}
|
||||
|
||||
public static void Vrev32(CodeGenContext context, uint rd, uint rm, uint size, uint q)
|
||||
{
|
||||
InstEmitNeonCommon.EmitVectorUnary(context, rd, rm, size, q, context.Arm64Assembler.Rev32);
|
||||
}
|
||||
|
||||
public static void Vrev64(CodeGenContext context, uint rd, uint rm, uint size, uint q)
|
||||
{
|
||||
InstEmitNeonCommon.EmitVectorUnary(context, rd, rm, size, q, context.Arm64Assembler.Rev64);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user