mirror of
https://github.com/Ryujinx/Ryujinx.git
synced 2024-08-17 14:18:44 +02:00
* Implement Thumb (32-bit) memory (ordered), multiply and bitfield instructions * Remove public from interface * Fix T32 BL immediate and implement signed and unsigned extend instructions
18 lines
548 B
C#
18 lines
548 B
C#
namespace ARMeilleure.Decoders
|
|
{
|
|
class OpCode32AluImm16 : OpCode32Alu, IOpCode32AluImm16
|
|
{
|
|
public int Immediate { get; }
|
|
|
|
public new static OpCode Create(InstDescriptor inst, ulong address, int opCode) => new OpCode32AluImm16(inst, address, opCode);
|
|
|
|
public OpCode32AluImm16(InstDescriptor inst, ulong address, int opCode) : base(inst, address, opCode)
|
|
{
|
|
int imm12 = opCode & 0xfff;
|
|
int imm4 = (opCode >> 16) & 0xf;
|
|
|
|
Immediate = (imm4 << 12) | imm12;
|
|
}
|
|
}
|
|
}
|