miasm
Reverse engineering framework
JitCore_mips32.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 "../op_semantics.h"
#include "JitCore_mips32.h"
Include dependency graph for JitCore_mips32.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_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 (ZERO)
 
 getset_reg_u32 (AT)
 
 getset_reg_u32 (V0)
 
 getset_reg_u32 (V1)
 
 getset_reg_u32 (A0)
 
 getset_reg_u32 (A1)
 
 getset_reg_u32 (A2)
 
 getset_reg_u32 (A3)
 
 getset_reg_u32 (T0)
 
 getset_reg_u32 (T1)
 
 getset_reg_u32 (T2)
 
 getset_reg_u32 (T3)
 
 getset_reg_u32 (T4)
 
 getset_reg_u32 (T5)
 
 getset_reg_u32 (T6)
 
 getset_reg_u32 (T7)
 
 getset_reg_u32 (S0)
 
 getset_reg_u32 (S1)
 
 getset_reg_u32 (S2)
 
 getset_reg_u32 (S3)
 
 getset_reg_u32 (S4)
 
 getset_reg_u32 (S5)
 
 getset_reg_u32 (S6)
 
 getset_reg_u32 (S7)
 
 getset_reg_u32 (T8)
 
 getset_reg_u32 (T9)
 
 getset_reg_u32 (K0)
 
 getset_reg_u32 (K1)
 
 getset_reg_u32 (GP)
 
 getset_reg_u32 (SP)
 
 getset_reg_u32 (FP)
 
 getset_reg_u32 (RA)
 
 getset_reg_u32 (PC)
 
 getset_reg_u32 (PC_FETCH)
 
 getset_reg_u32 (R_LO)
 
 getset_reg_u32 (R_HI)
 
PyObject * get_gpreg_offset_all (void)
 
 MOD_INIT (JitCore_mips32)
 

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:

◆ 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/36]

getset_reg_u32 ( A0  )

◆ getset_reg_u32() [2/36]

getset_reg_u32 ( A1  )

◆ getset_reg_u32() [3/36]

getset_reg_u32 ( A2  )

◆ getset_reg_u32() [4/36]

getset_reg_u32 ( A3  )

◆ getset_reg_u32() [5/36]

getset_reg_u32 ( AT  )

◆ getset_reg_u32() [6/36]

getset_reg_u32 ( FP  )

◆ getset_reg_u32() [7/36]

getset_reg_u32 ( GP  )

◆ getset_reg_u32() [8/36]

getset_reg_u32 ( K0  )

◆ getset_reg_u32() [9/36]

getset_reg_u32 ( K1  )

◆ getset_reg_u32() [10/36]

getset_reg_u32 ( PC  )

◆ getset_reg_u32() [11/36]

getset_reg_u32 ( PC_FETCH  )

◆ getset_reg_u32() [12/36]

getset_reg_u32 ( R_HI  )

◆ getset_reg_u32() [13/36]

getset_reg_u32 ( R_LO  )

◆ getset_reg_u32() [14/36]

getset_reg_u32 ( RA  )

◆ getset_reg_u32() [15/36]

getset_reg_u32 ( S0  )

◆ getset_reg_u32() [16/36]

getset_reg_u32 ( S1  )

◆ getset_reg_u32() [17/36]

getset_reg_u32 ( S2  )

◆ getset_reg_u32() [18/36]

getset_reg_u32 ( S3  )

◆ getset_reg_u32() [19/36]

getset_reg_u32 ( S4  )

◆ getset_reg_u32() [20/36]

getset_reg_u32 ( S5  )

◆ getset_reg_u32() [21/36]

getset_reg_u32 ( S6  )

◆ getset_reg_u32() [22/36]

getset_reg_u32 ( S7  )

◆ getset_reg_u32() [23/36]

getset_reg_u32 ( SP  )

◆ getset_reg_u32() [24/36]

getset_reg_u32 ( T0  )

◆ getset_reg_u32() [25/36]

getset_reg_u32 ( T1  )

◆ getset_reg_u32() [26/36]

getset_reg_u32 ( T2  )

◆ getset_reg_u32() [27/36]

getset_reg_u32 ( T3  )

◆ getset_reg_u32() [28/36]

getset_reg_u32 ( T4  )

◆ getset_reg_u32() [29/36]

getset_reg_u32 ( T5  )

◆ getset_reg_u32() [30/36]

getset_reg_u32 ( T6  )

◆ getset_reg_u32() [31/36]

getset_reg_u32 ( T7  )

◆ getset_reg_u32() [32/36]

getset_reg_u32 ( T8  )

◆ getset_reg_u32() [33/36]

getset_reg_u32 ( T9  )

◆ getset_reg_u32() [34/36]

getset_reg_u32 ( V0  )

◆ getset_reg_u32() [35/36]

getset_reg_u32 ( V1  )

◆ getset_reg_u32() [36/36]

getset_reg_u32 ( ZERO  )

◆ 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_mips32  )

Variable Documentation

◆ gpreg_dict

reg_dict gpreg_dict[]