diff options
Diffstat (limited to 'ARMeilleure/Decoders/OpCodeT16AluImm8.cs')
-rw-r--r-- | ARMeilleure/Decoders/OpCodeT16AluImm8.cs | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/ARMeilleure/Decoders/OpCodeT16AluImm8.cs b/ARMeilleure/Decoders/OpCodeT16AluImm8.cs index d31f37a2..673a4604 100644 --- a/ARMeilleure/Decoders/OpCodeT16AluImm8.cs +++ b/ARMeilleure/Decoders/OpCodeT16AluImm8.cs @@ -1,22 +1,24 @@ -namespace ARMeilleure.Decoders +namespace ARMeilleure.Decoders { - class OpCodeT16AluImm8 : OpCodeT16, IOpCode32Alu + class OpCodeT16AluImm8 : OpCodeT16, IOpCode32AluImm { - private int _rdn; + public int Rd { get; } + public int Rn { get; } - public int Rd => _rdn; - public int Rn => _rdn; - - public bool SetFlags => false; + public bool? SetFlags => null; public int Immediate { get; } - public new static OpCode Create(InstDescriptor inst, ulong address, int opCode) => new OpCodeT16AluImm8(inst, address, opCode); + public bool IsRotated { get; } + + public static new OpCode Create(InstDescriptor inst, ulong address, int opCode) => new OpCodeT16AluImm8(inst, address, opCode); public OpCodeT16AluImm8(InstDescriptor inst, ulong address, int opCode) : base(inst, address, opCode) { + Rd = (opCode >> 8) & 0x7; + Rn = (opCode >> 8) & 0x7; Immediate = (opCode >> 0) & 0xff; - _rdn = (opCode >> 8) & 0x7; + IsRotated = false; } } -}
\ No newline at end of file +} |