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

Function LDR_lit_fpsimd

arch/arm64/disassembler/decode2.c:15256–15283  ·  view source on GitHub ↗

ldr_lit_fpsimd.xml */

Source from the content-addressed store, hash-verified

15254
15255/* ldr_lit_fpsimd.xml */
15256int LDR_lit_fpsimd(context *ctx, Instruction *instr)
15257{
15258 int rc = DECODE_STATUS_UNMATCHED;
15259 /* class iclass_literal */
15260 /* opc=xx|011|V=1|00|imm19=xxxxxxxxxxxxxxxxxxx|Rt=xxxxx */
15261 if((INSWORD & 0x3F000000)==0x1C000000) {
15262 decode_fields32(ENC_LDR_S_LOADLIT, ctx, instr);
15263 ctx->t = UINT(ctx->Rt);
15264 if(!ctx->opc) {
15265 ctx->size = 4;
15266 }
15267 else if(ctx->opc==1) {
15268 ctx->size = 8;
15269 }
15270 else if(ctx->opc==2) {
15271 ctx->size = 0x10;
15272 }
15273 else if(ctx->opc==3) {
15274 UNDEFINED;
15275 }
15276 ctx->offset = SignExtend((ctx->imm19<<2),21);
15277 ctx->tag_checked = FALSE;
15278 if(ctx->opc==0) OK(ENC_LDR_S_LOADLIT);
15279 if(ctx->opc==1) OK(ENC_LDR_D_LOADLIT);
15280 if(ctx->opc==2) OK(ENC_LDR_Q_LOADLIT);
15281 }
15282 return rc;
15283}
15284
15285/* ldr_lit_gen.xml */
15286int LDR_lit_gen(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