mirror of
https://github.com/radareorg/radare2.git
synced 2024-10-11 12:54:45 +00:00
* Fix build
This commit is contained in:
parent
965a577af2
commit
1f953579ea
@ -24,8 +24,8 @@ R_API RAnal *r_anal_new() {
|
||||
RAnalPlugin *static_plugin;
|
||||
RAnal *anal = R_NEW (RAnal);
|
||||
if (anal) {
|
||||
anal->syscall = r_syscall_new ();
|
||||
memset (anal, 0, sizeof (RAnal));
|
||||
anal->syscall = r_syscall_new ();
|
||||
anal->reg = NULL;
|
||||
anal->bbs = r_anal_bb_list_new ();
|
||||
anal->fcns = r_anal_fcn_list_new ();
|
||||
|
@ -36,28 +36,26 @@ R_API char *r_anal_cc_to_string (RAnal *anal, RAnalCC* cc) {
|
||||
RAnalFcn *fcn;
|
||||
char str[1024], buf[32];
|
||||
int i;
|
||||
int eax = 0; // eax = arg0
|
||||
|
||||
str[0] = 0;
|
||||
switch (cc->type) {
|
||||
case R_ANAL_CC_TYPE_FASTCALL: // INT
|
||||
#if 0
|
||||
int eax = 0; // eax = arg0
|
||||
//int eax = (int)r_vm_reg_get (core->vm, core->vm->cpu.ret); //"eax");
|
||||
si = r_syscall_get (core->syscall, eax, (int)cc->jump);
|
||||
si = r_syscall_get (anal->syscall, eax, (int)cc->jump);
|
||||
if (si) {
|
||||
//DEBUG r_cons_printf (" ; sc[0x%x][%d]=%s(", (int)analop.value, eax, si->name);
|
||||
snprintf (str, "%s (", si->name);
|
||||
snprintf (str, sizeof (str), "%s (", si->name);
|
||||
for (i=0; i<si->args; i++) {
|
||||
//const char *reg = r_asm_fastcall (core->assembler, i+1, si->args);
|
||||
sprintf (buf, "0x%"PFMT64x, r_vm_reg_get (core->vm, reg));
|
||||
const char *reg = r_syscall_reg (anal->syscall, i+1, si->args);
|
||||
sprintf (buf, "(%s)", reg);
|
||||
//TODO sprintf (buf, "0x%"PFMT64x, 0LL); //r_vm_reg_get (core->vm, reg));
|
||||
strcat (str, buf);
|
||||
if (i<si->args-1)
|
||||
strcat (str, ",");
|
||||
}
|
||||
r_cons_printf (")");
|
||||
strcat (str, ")");
|
||||
} else snprintf (str, sizeof (str), "syscall[0x%x][%d]=?", (int)cc->jump, eax);
|
||||
#endif
|
||||
strcpy (str, "syscall(TODO)\n");
|
||||
break;
|
||||
case R_ANAL_CC_TYPE_STDCALL: // CALL
|
||||
// if (analop.jump != UT64_MAX) {
|
||||
@ -67,7 +65,7 @@ R_API char *r_anal_cc_to_string (RAnal *anal, RAnalCC* cc) {
|
||||
if (fcn) cc->nargs = (fcn->nargs>cc->nargs?cc->nargs:fcn->nargs);
|
||||
for (i=0; i<cc->nargs; i++) {
|
||||
snprintf (buf, sizeof (buf),
|
||||
(cc->args[i]<1024)?"%"PFMT64d:"0x%"PFMT64x,
|
||||
(cc->args[cc->nargs-i]>1024)?"%"PFMT64d:"0x%"PFMT64x,
|
||||
cc->args[cc->nargs-i]);
|
||||
strcat (str, buf);
|
||||
if (i<cc->nargs-1) strcat (str, ", ");
|
||||
|
@ -44,12 +44,10 @@ static void printoffset(ut64 off, int show_color) {
|
||||
/* TODO: move to print/disasm.c */
|
||||
static void r_print_disasm(RPrint *p, RCore *core, ut64 addr, ut8 *buf, int len, int l) {
|
||||
RAnalCC cc = {0};
|
||||
RAnalFcn *fcn, *f = NULL;
|
||||
RAnalFcn *f = NULL;
|
||||
int ret, idx, i, j, k, lines, ostackptr, stackptr = 0;
|
||||
int counter = 0;
|
||||
int middle = 0;
|
||||
int nargs = 0;
|
||||
ut64 args[32];
|
||||
char str[128];
|
||||
char *line, *comment, *opstr, *osl = NULL; // old source line
|
||||
RAsmAop asmop;
|
||||
|
@ -66,6 +66,7 @@ R_API RSyscallItem *r_syscall_get(RSyscall *ctx, int num, int swi);
|
||||
R_API int r_syscall_get_num(RSyscall *ctx, const char *str);
|
||||
R_API RSyscallItem *r_syscall_get_n(RSyscall *ctx, int n); // broken iterator.. must remove
|
||||
R_API const char *r_syscall_get_i(RSyscall *ctx, int num, int swi); // XXX const char *
|
||||
R_API const char *r_syscall_reg(RSyscall *s, int idx, int num);
|
||||
R_API void r_syscall_list(RSyscall *ctx);
|
||||
#endif
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user