AOpCodeBfm.cs 732 B

1234567891011121314151617181920212223242526272829
  1. using ChocolArm64.Instruction;
  2. namespace ChocolArm64.Decoder
  3. {
  4. class AOpCodeBfm : AOpCodeAlu
  5. {
  6. public long WMask { get; private set; }
  7. public long TMask { get; private set; }
  8. public int Pos { get; private set; }
  9. public int Shift { get; private set; }
  10. public AOpCodeBfm(AInst Inst, long Position, int OpCode) : base(Inst, Position, OpCode)
  11. {
  12. var BM = ADecoderHelper.DecodeBitMask(OpCode, false);
  13. if (BM.IsUndefined)
  14. {
  15. Emitter = AInstEmit.Und;
  16. return;
  17. }
  18. WMask = BM.WMask;
  19. TMask = BM.TMask;
  20. Pos = BM.Pos;
  21. Shift = BM.Shift;
  22. }
  23. }
  24. }