Rizin
unix-like reverse engineering framework and cli tools
avr_esil.h File Reference
#include <rz_analysis.h>

Go to the source code of this file.

Functions

RZ_IPI int rz_avr_esil_init (RzAnalysisEsil *esil)
 
RZ_IPI int rz_avr_esil_fini (RzAnalysisEsil *esil)
 
RZ_IPI void rz_avr_esil_opcode (RzAnalysis *analysis, RzAnalysisOp *op, ut64 addr, const ut8 *buf, int len)
 

Function Documentation

◆ rz_avr_esil_fini()

RZ_IPI int rz_avr_esil_fini ( RzAnalysisEsil esil)

Definition at line 1632 of file avr_esil.c.

1632  {
1633  return true;
1634 }

◆ rz_avr_esil_init()

RZ_IPI int rz_avr_esil_init ( RzAnalysisEsil esil)

Definition at line 1619 of file avr_esil.c.

1619  {
1620  if (!esil) {
1621  return false;
1622  }
1623  rz_analysis_esil_set_op(esil, "des", avr_custom_des, 0, 0, RZ_ANALYSIS_ESIL_OP_TYPE_CUSTOM); // better meta info plz
1628 
1629  return true;
1630 }
static int esil_avr_hook_reg_write(RzAnalysisEsil *esil, const char *name, ut64 *val)
Definition: avr_esil.c:1593
static bool avr_custom_des(RzAnalysisEsil *esil)
Definition: avr_esil.c:1405
static bool avr_custom_spm_page_write(RzAnalysisEsil *esil)
Definition: avr_esil.c:1557
static bool avr_custom_spm_page_erase(RzAnalysisEsil *esil)
Definition: avr_esil.c:1482
static bool avr_custom_spm_page_fill(RzAnalysisEsil *esil)
Definition: avr_esil.c:1516
RZ_API bool rz_analysis_esil_set_op(RzAnalysisEsil *esil, const char *op, RzAnalysisEsilOpCb code, ut32 push, ut32 pop, ut32 type)
Definition: esil.c:110
@ RZ_ANALYSIS_ESIL_OP_TYPE_CUSTOM
Definition: rz_analysis.h:1184
RzAnalysisEsilHookRegWriteCB hook_reg_write
Definition: rz_analysis.h:1038
RzAnalysisEsilCallbacks cb
Definition: rz_analysis.h:1078

References avr_custom_des(), avr_custom_spm_page_erase(), avr_custom_spm_page_fill(), avr_custom_spm_page_write(), rz_analysis_esil_t::cb, esil_avr_hook_reg_write(), rz_analysis_esil_callbacks_t::hook_reg_write, RZ_ANALYSIS_ESIL_OP_TYPE_CUSTOM, and rz_analysis_esil_set_op().

◆ rz_avr_esil_opcode()

RZ_IPI void rz_avr_esil_opcode ( RzAnalysis analysis,
RzAnalysisOp op,
ut64  addr,
const ut8 buf,
int  len 
)

Definition at line 1636 of file avr_esil.c.

1636  {
1637  // select cpu info
1638  CPU_MODEL *cpu = get_cpu_model(analysis->cpu);
1639  avr_op_analyze(analysis, op, addr, buf, len, cpu);
1640 }
size_t len
Definition: 6502dis.c:15
static ut32 cpu[32]
Definition: analysis_or1k.c:21
static CPU_MODEL * get_cpu_model(char *model)
Definition: avr_esil.c:176
static OPCODE_DESC * avr_op_analyze(RzAnalysis *analysis, RzAnalysisOp *op, ut64 addr, const ut8 *buf, int len, CPU_MODEL *cpu)
Definition: avr_esil.c:1364
voidpf void * buf
Definition: ioapi.h:138
Definition: dis.c:32
static int addr
Definition: z80asm.c:58

References addr, avr_op_analyze(), cpu, rz_analysis_t::cpu, get_cpu_model(), and len.

Referenced by avr_op().