| 111 | } |
| 112 | |
| 113 | int decode_iclass_pstate(context *ctx, Instruction *dec) |
| 114 | { |
| 115 | uint32_t op1=(INSWORD>>16)&7, op2=(INSWORD>>5)&7, Rt=INSWORD&0x1f; |
| 116 | if(!op1 && !op2 && Rt==0x1f && HasFlagM()) return CFINV(ctx, dec); // -> CFINV_M_pstate |
| 117 | if(!op1 && op2==1 && Rt==0x1f && HasFlagM2()) return XAFLAG(ctx, dec); // -> XAFLAG_M_pstate |
| 118 | if(!op1 && op2==2 && Rt==0x1f && HasFlagM2()) return AXFLAG(ctx, dec); // -> AXFLAG_M_pstate |
| 119 | if(Rt!=0x1f) UNALLOCATED(ENC_UNALLOCATED_10_PSTATE); |
| 120 | if(Rt==0x1f) return MSR_imm(ctx, dec); // -> MSR_SI_pstate |
| 121 | UNMATCHED; |
| 122 | } |
| 123 | |
| 124 | int decode_iclass_systeminstrs(context *ctx, Instruction *dec) |
| 125 | { |
no test coverage detected