MCPcopy Create free account
hub / github.com/Vector35/binaryninja-api / CBNZ

Function CBNZ

arch/arm64/disassembler/decode2.c:1966–1981  ·  view source on GitHub ↗

cbnz.xml */

Source from the content-addressed store, hash-verified

1964
1965/* cbnz.xml */
1966int 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 */
1984int CBZ(context *ctx, Instruction *instr)

Callers 1

decode_iclass_compbranchFunction · 0.85

Calls 2

decode_fields32Function · 0.85
SignExtendFunction · 0.85

Tested by

no test coverage detected