| 12345678910111213141516171819202122232425262728293031 |
- using ChocolArm64.Instruction;
- using ChocolArm64.State;
- namespace ChocolArm64.Decoder
- {
- class AOpCodeCcmp : AOpCodeAlu, IAOpCodeCond
- {
- public int NZCV { get; private set; }
- protected int RmImm;
- public ACond Cond { get; private set; }
- public AOpCodeCcmp(AInst Inst, long Position, int OpCode) : base(Inst, Position, OpCode)
- {
- int O3 = (OpCode >> 4) & 1;
- if (O3 != 0)
- {
- Emitter = AInstEmit.Und;
- return;
- }
- NZCV = (OpCode >> 0) & 0xf;
- Cond = (ACond)((OpCode >> 12) & 0xf);
- RmImm = (OpCode >> 16) & 0x1f;
- Rd = AThreadState.ZRIndex;
- }
- }
- }
|