miasm
Reverse engineering framework
JitCore_mep.c File Reference
#include <Python.h>
#include "structmember.h"
#include <stdint.h>
#include <inttypes.h>
#include "../compat_py23.h"
#include "../queue.h"
#include "../vm_mngr.h"
#include "../bn.h"
#include "../vm_mngr_py.h"
#include "../JitCore.h"
#include "JitCore_mep.h"
Include dependency graph for JitCore_mep.c:

Functions

PyObject * cpu_get_gpreg (JitCpu *self)
 
PyObject * cpu_set_gpreg (JitCpu *self, PyObject *args)
 
PyObject * cpu_init_regs (JitCpu *self)
 
void dump_gpregs (struct vm_cpu *vmcpu)
 
PyObject * cpu_dump_gpregs (JitCpu *self, PyObject *args)
 
PyObject * cpu_dump_gpregs_with_attrib (JitCpu *self, PyObject *args)
 
PyObject * cpu_set_exception (JitCpu *self, PyObject *args)
 
PyObject * cpu_get_exception (JitCpu *self, PyObject *args)
 
void MEM_WRITE_08 (JitCpu *jitcpu, uint64_t addr, uint8_t src)
 
void MEM_WRITE_16 (JitCpu *jitcpu, uint64_t addr, uint16_t src)
 
void MEM_WRITE_32 (JitCpu *jitcpu, uint64_t addr, uint32_t src)
 
void MEM_WRITE_64 (JitCpu *jitcpu, uint64_t addr, uint64_t src)
 
 getset_reg_u32 (R0)
 
 getset_reg_u32 (R1)
 
 getset_reg_u32 (R2)
 
 getset_reg_u32 (R3)
 
 getset_reg_u32 (R4)
 
 getset_reg_u32 (R5)
 
 getset_reg_u32 (R6)
 
 getset_reg_u32 (R7)
 
 getset_reg_u32 (R8)
 
 getset_reg_u32 (R9)
 
 getset_reg_u32 (R10)
 
 getset_reg_u32 (R11)
 
 getset_reg_u32 (R12)
 
 getset_reg_u32 (TP)
 
 getset_reg_u32 (GP)
 
 getset_reg_u32 (SP)
 
 getset_reg_u32 (PC)
 
 getset_reg_u32 (LP)
 
 getset_reg_u32 (SAR)
 
 getset_reg_u32 (S3)
 
 getset_reg_u32 (RPB)
 
 getset_reg_u32 (RPE)
 
 getset_reg_u32 (RPC)
 
 getset_reg_u32 (HI)
 
 getset_reg_u32 (LO)
 
 getset_reg_u32 (S9)
 
 getset_reg_u32 (S10)
 
 getset_reg_u32 (S11)
 
 getset_reg_u32 (MB0)
 
 getset_reg_u32 (ME0)
 
 getset_reg_u32 (MB1)
 
 getset_reg_u32 (ME1)
 
 getset_reg_u32 (PSW)
 
 getset_reg_u32 (ID)
 
 getset_reg_u32 (TMP)
 
 getset_reg_u32 (EPC)
 
 getset_reg_u32 (EXC)
 
 getset_reg_u32 (CFG)
 
 getset_reg_u32 (S22)
 
 getset_reg_u32 (NPC)
 
 getset_reg_u32 (DBG)
 
 getset_reg_u32 (DEPC)
 
 getset_reg_u32 (OPT)
 
 getset_reg_u32 (RCFG)
 
 getset_reg_u32 (CCFG)
 
 getset_reg_u32 (S29)
 
 getset_reg_u32 (S30)
 
 getset_reg_u32 (S31)
 
 getset_reg_u32 (S32)
 
 getset_reg_u32 (PC_end)
 
 getset_reg_u32 (RPE_instr_count)
 
 getset_reg_u32 (RPC_current)
 
PyObject * get_gpreg_offset_all (void)
 
 MOD_INIT (JitCore_mep)
 

Variables

reg_dict gpreg_dict []
 

Function Documentation

◆ cpu_dump_gpregs()

PyObject* cpu_dump_gpregs ( JitCpu self,
PyObject *  args 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cpu_dump_gpregs_with_attrib()

PyObject* cpu_dump_gpregs_with_attrib ( JitCpu self,
PyObject *  args 
)
Here is the call graph for this function:

◆ cpu_get_exception()

PyObject* cpu_get_exception ( JitCpu self,
PyObject *  args 
)

◆ cpu_get_gpreg()

PyObject* cpu_get_gpreg ( JitCpu self)

◆ cpu_init_regs()

PyObject* cpu_init_regs ( JitCpu self)

◆ cpu_set_exception()

PyObject* cpu_set_exception ( JitCpu self,
PyObject *  args 
)

◆ cpu_set_gpreg()

PyObject* cpu_set_gpreg ( JitCpu self,
PyObject *  args 
)

◆ dump_gpregs()

void dump_gpregs ( struct vm_cpu vmcpu)
Here is the caller graph for this function:

◆ get_gpreg_offset_all()

PyObject* get_gpreg_offset_all ( void  )

◆ getset_reg_u32() [1/52]

getset_reg_u32 ( CCFG  )

◆ getset_reg_u32() [2/52]

getset_reg_u32 ( CFG  )

◆ getset_reg_u32() [3/52]

getset_reg_u32 ( DBG  )

◆ getset_reg_u32() [4/52]

getset_reg_u32 ( DEPC  )

◆ getset_reg_u32() [5/52]

getset_reg_u32 ( EPC  )

◆ getset_reg_u32() [6/52]

getset_reg_u32 ( EXC  )

◆ getset_reg_u32() [7/52]

getset_reg_u32 ( GP  )

◆ getset_reg_u32() [8/52]

getset_reg_u32 ( HI  )

◆ getset_reg_u32() [9/52]

getset_reg_u32 ( ID  )

◆ getset_reg_u32() [10/52]

getset_reg_u32 ( LO  )

◆ getset_reg_u32() [11/52]

getset_reg_u32 ( LP  )

◆ getset_reg_u32() [12/52]

getset_reg_u32 ( MB0  )

◆ getset_reg_u32() [13/52]

getset_reg_u32 ( MB1  )

◆ getset_reg_u32() [14/52]

getset_reg_u32 ( ME0  )

◆ getset_reg_u32() [15/52]

getset_reg_u32 ( ME1  )

◆ getset_reg_u32() [16/52]

getset_reg_u32 ( NPC  )

◆ getset_reg_u32() [17/52]

getset_reg_u32 ( OPT  )

◆ getset_reg_u32() [18/52]

getset_reg_u32 ( PC  )

◆ getset_reg_u32() [19/52]

getset_reg_u32 ( PC_end  )

◆ getset_reg_u32() [20/52]

getset_reg_u32 ( PSW  )

◆ getset_reg_u32() [21/52]

getset_reg_u32 ( R0  )

◆ getset_reg_u32() [22/52]

getset_reg_u32 ( R1  )

◆ getset_reg_u32() [23/52]

getset_reg_u32 ( R10  )

◆ getset_reg_u32() [24/52]

getset_reg_u32 ( R11  )

◆ getset_reg_u32() [25/52]

getset_reg_u32 ( R12  )

◆ getset_reg_u32() [26/52]

getset_reg_u32 ( R2  )

◆ getset_reg_u32() [27/52]

getset_reg_u32 ( R3  )

◆ getset_reg_u32() [28/52]

getset_reg_u32 ( R4  )

◆ getset_reg_u32() [29/52]

getset_reg_u32 ( R5  )

◆ getset_reg_u32() [30/52]

getset_reg_u32 ( R6  )

◆ getset_reg_u32() [31/52]

getset_reg_u32 ( R7  )

◆ getset_reg_u32() [32/52]

getset_reg_u32 ( R8  )

◆ getset_reg_u32() [33/52]

getset_reg_u32 ( R9  )

◆ getset_reg_u32() [34/52]

getset_reg_u32 ( RCFG  )

◆ getset_reg_u32() [35/52]

getset_reg_u32 ( RPB  )

◆ getset_reg_u32() [36/52]

getset_reg_u32 ( RPC  )

◆ getset_reg_u32() [37/52]

getset_reg_u32 ( RPC_current  )

◆ getset_reg_u32() [38/52]

getset_reg_u32 ( RPE  )

◆ getset_reg_u32() [39/52]

getset_reg_u32 ( RPE_instr_count  )

◆ getset_reg_u32() [40/52]

getset_reg_u32 ( S10  )

◆ getset_reg_u32() [41/52]

getset_reg_u32 ( S11  )

◆ getset_reg_u32() [42/52]

getset_reg_u32 ( S22  )

◆ getset_reg_u32() [43/52]

getset_reg_u32 ( S29  )

◆ getset_reg_u32() [44/52]

getset_reg_u32 ( S3  )

◆ getset_reg_u32() [45/52]

getset_reg_u32 ( S30  )

◆ getset_reg_u32() [46/52]

getset_reg_u32 ( S31  )

◆ getset_reg_u32() [47/52]

getset_reg_u32 ( S32  )

◆ getset_reg_u32() [48/52]

getset_reg_u32 ( S9  )

◆ getset_reg_u32() [49/52]

getset_reg_u32 ( SAR  )

◆ getset_reg_u32() [50/52]

getset_reg_u32 ( SP  )

◆ getset_reg_u32() [51/52]

getset_reg_u32 ( TMP  )

◆ getset_reg_u32() [52/52]

getset_reg_u32 ( TP  )

◆ MEM_WRITE_08()

void MEM_WRITE_08 ( JitCpu jitcpu,
uint64_t  addr,
uint8_t  src 
)
Here is the call graph for this function:

◆ MEM_WRITE_16()

void MEM_WRITE_16 ( JitCpu jitcpu,
uint64_t  addr,
uint16_t  src 
)
Here is the call graph for this function:

◆ MEM_WRITE_32()

void MEM_WRITE_32 ( JitCpu jitcpu,
uint64_t  addr,
uint32_t  src 
)
Here is the call graph for this function:

◆ MEM_WRITE_64()

void MEM_WRITE_64 ( JitCpu jitcpu,
uint64_t  addr,
uint64_t  src 
)
Here is the call graph for this function:

◆ MOD_INIT()

MOD_INIT ( JitCore_mep  )

Variable Documentation

◆ gpreg_dict

reg_dict gpreg_dict[]