ccmn_reg.xml */
| 2022 | |
| 2023 | /* ccmn_reg.xml */ |
| 2024 | int CCMN_reg(context *ctx, Instruction *instr) |
| 2025 | { |
| 2026 | int rc = DECODE_STATUS_UNMATCHED; |
| 2027 | /* class iclass_general */ |
| 2028 | /* sf=x|op=0|S=1|11010010|Rm=xxxxx|cond=xxxx|0|o2=0|Rn=xxxxx|o3=0|nzcv=xxxx */ |
| 2029 | if((INSWORD & 0x7FE00C10)==0x3A400000) { |
| 2030 | decode_fields32(ENC_CCMN_32_CONDCMP_REG, ctx, instr); |
| 2031 | ctx->n = UINT(ctx->Rn); |
| 2032 | ctx->m = UINT(ctx->Rm); |
| 2033 | ctx->datasize = (ctx->sf==1) ? 0x40 : 0x20; |
| 2034 | ctx->sub_op = (ctx->op==1); |
| 2035 | ctx->condition = ctx->cond; |
| 2036 | ctx->flags = ctx->nzcv; |
| 2037 | if(ctx->sf==0) OK(ENC_CCMN_32_CONDCMP_REG); |
| 2038 | if(ctx->sf==1) OK(ENC_CCMN_64_CONDCMP_REG); |
| 2039 | } |
| 2040 | /* relevant operational pcode */ |
| 2041 | instr->setflags = FLAGEFFECT_SETS_NORMAL; |
| 2042 | return rc; |
| 2043 | } |
| 2044 | |
| 2045 | /* ccmp_imm.xml */ |
| 2046 | int CCMP_imm(context *ctx, Instruction *instr) |
no test coverage detected