OpCode32AluRsImm.cs 630 B

1234567891011121314151617181920
  1. namespace ARMeilleure.Decoders
  2. {
  3. class OpCode32AluRsImm : OpCode32Alu, IOpCode32AluRsImm
  4. {
  5. public int Rm { get; }
  6. public int Immediate { get; }
  7. public ShiftType ShiftType { get; }
  8. public new static OpCode Create(InstDescriptor inst, ulong address, int opCode) => new OpCode32AluRsImm(inst, address, opCode);
  9. public OpCode32AluRsImm(InstDescriptor inst, ulong address, int opCode) : base(inst, address, opCode)
  10. {
  11. Rm = (opCode >> 0) & 0xf;
  12. Immediate = (opCode >> 7) & 0x1f;
  13. ShiftType = (ShiftType)((opCode >> 5) & 3);
  14. }
  15. }
  16. }