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

Function LDRSW_lit

arch/arm64/disassembler/decode2.c:15011–15039  ·  view source on GitHub ↗

ldrsw_lit.xml */

Source from the content-addressed store, hash-verified

15009
15010/* ldrsw_lit.xml */
15011int LDRSW_lit(context *ctx, Instruction *instr)
15012{
15013 int rc = DECODE_STATUS_UNMATCHED;
15014 /* class iclass_literal */
15015 /* opc=10|011|V=0|00|imm19=xxxxxxxxxxxxxxxxxxx|Rt=xxxxx */
15016 if((INSWORD & 0xFF000000)==0x98000000) {
15017 decode_fields32(ENC_LDRSW_64_LOADLIT, ctx, instr);
15018 ctx->t = UINT(ctx->Rt);
15019 ctx->memop = MemOp_LOAD;
15020 ctx->signed_ = FALSE;
15021 if(!ctx->opc) {
15022 ctx->size = 4;
15023 }
15024 else if(ctx->opc==1) {
15025 ctx->size = 8;
15026 }
15027 else if(ctx->opc==2) {
15028 ctx->size = 4;
15029 ctx->signed_ = TRUE;
15030 }
15031 else if(ctx->opc==3) {
15032 ctx->memop = MemOp_PREFETCH;
15033 }
15034 ctx->offset = SignExtend((ctx->imm19<<2),21);
15035 ctx->tag_checked = FALSE;
15036 OK(ENC_LDRSW_64_LOADLIT);
15037 }
15038 return rc;
15039}
15040
15041/* ldrsw_reg.xml */
15042int LDRSW_reg(context *ctx, Instruction *instr)

Callers 1

decode_iclass_loadlitFunction · 0.85

Calls 2

decode_fields32Function · 0.85
SignExtendFunction · 0.85

Tested by

no test coverage detected