cbnz.xml */
| 1964 | |
| 1965 | /* cbnz.xml */ |
| 1966 | int CBNZ(context *ctx, Instruction *instr) |
| 1967 | { |
| 1968 | int rc = DECODE_STATUS_UNMATCHED; |
| 1969 | /* class iclass_br19 */ |
| 1970 | /* sf=x|011010|op=1|imm19=xxxxxxxxxxxxxxxxxxx|Rt=xxxxx */ |
| 1971 | if((INSWORD & 0x7F000000)==0x35000000) { |
| 1972 | decode_fields32(ENC_CBNZ_32_COMPBRANCH, ctx, instr); |
| 1973 | ctx->t = UINT(ctx->Rt); |
| 1974 | ctx->datasize = (ctx->sf==1) ? 0x40 : 0x20; |
| 1975 | ctx->iszero = (ctx->op==0); |
| 1976 | ctx->offset = SignExtend((ctx->imm19<<2),21); |
| 1977 | if(ctx->sf==0) OK(ENC_CBNZ_32_COMPBRANCH); |
| 1978 | if(ctx->sf==1) OK(ENC_CBNZ_64_COMPBRANCH); |
| 1979 | } |
| 1980 | return rc; |
| 1981 | } |
| 1982 | |
| 1983 | /* cbz.xml */ |
| 1984 | int CBZ(context *ctx, Instruction *instr) |
no test coverage detected