csel.xml */
| 3121 | |
| 3122 | /* csel.xml */ |
| 3123 | int CSEL(context *ctx, Instruction *instr) |
| 3124 | { |
| 3125 | int rc = DECODE_STATUS_UNMATCHED; |
| 3126 | /* class iclass_general */ |
| 3127 | /* sf=x|op=0|S=0|11010100|Rm=xxxxx|cond=xxxx|op2[1]=0|o2=0|Rn=xxxxx|Rd=xxxxx */ |
| 3128 | if((INSWORD & 0x7FE00C00)==0x1A800000) { |
| 3129 | decode_fields32(ENC_CSEL_32_CONDSEL, ctx, instr); |
| 3130 | ctx->d = UINT(ctx->Rd); |
| 3131 | ctx->n = UINT(ctx->Rn); |
| 3132 | ctx->m = UINT(ctx->Rm); |
| 3133 | ctx->datasize = (ctx->sf==1) ? 0x40 : 0x20; |
| 3134 | ctx->condition = ctx->cond; |
| 3135 | ctx->else_inv = (ctx->op==1); |
| 3136 | ctx->else_inc = (ctx->o2==1); |
| 3137 | if(ctx->sf==0) OK(ENC_CSEL_32_CONDSEL); |
| 3138 | if(ctx->sf==1) OK(ENC_CSEL_64_CONDSEL); |
| 3139 | } |
| 3140 | return rc; |
| 3141 | } |
| 3142 | |
| 3143 | /* csetm_csinv.xml */ |
| 3144 | int CSETM_CSINV(context *ctx, Instruction *instr) |
no test coverage detected