mirror of
https://github.com/radareorg/radare2.git
synced 2024-12-15 09:21:00 +00:00
Fix visual disasm for arm.gnu plugin
This commit is contained in:
parent
effa16c871
commit
92856e0e37
@ -38,11 +38,11 @@ static int op_thumb(RAnal *anal, RAnalOp *op, ut64 addr, const ut8 *data, int le
|
||||
ut32 ins32 = *_ins32;
|
||||
|
||||
struct winedbg_arm_insn *arminsn = arm_new();
|
||||
arm_set_thumb(arminsn, R_TRUE);
|
||||
arm_set_input_buffer(arminsn, data);
|
||||
arm_set_pc(arminsn, addr);
|
||||
arm_set_thumb (arminsn, R_TRUE);
|
||||
arm_set_input_buffer (arminsn, data);
|
||||
arm_set_pc (arminsn, addr);
|
||||
op->delay = 0;
|
||||
op->size = arm_disasm_one_insn(arminsn);
|
||||
op->size = arm_disasm_one_insn (arminsn);
|
||||
op->jump = arminsn->jmp;
|
||||
op->fail = arminsn->fail;
|
||||
arm_free(arminsn);
|
||||
@ -203,7 +203,8 @@ static int arm_op32(RAnal *anal, RAnalOp *op, ut64 addr, const ut8 *data, int le
|
||||
case 5:
|
||||
if ((b[3]&0xf) == 5) {
|
||||
op->ptr = 8+addr+b[0]+((b[1]&0xf)<<8);
|
||||
op->refptr = R_TRUE;
|
||||
// XXX: if set it breaks the visual disasm wtf
|
||||
// op->refptr = R_TRUE;
|
||||
}
|
||||
case 4:
|
||||
case 6:
|
||||
@ -211,6 +212,7 @@ static int arm_op32(RAnal *anal, RAnalOp *op, ut64 addr, const ut8 *data, int le
|
||||
case 8:
|
||||
case 9:
|
||||
op->type = R_ANAL_OP_TYPE_LOAD;
|
||||
break;
|
||||
}
|
||||
} else
|
||||
// 0x000037b8 00:0000 0 800000ef svc 0x00000080
|
||||
@ -341,7 +343,7 @@ if (
|
||||
}
|
||||
//op->jump = arminsn->jmp;
|
||||
//op->fail = arminsn->fail;
|
||||
arm_free(arminsn);
|
||||
arm_free (arminsn);
|
||||
return op->size;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user