miasm
Reverse engineering framework
JitCore_aarch64.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_aarch64.h"
Include dependency graph for JitCore_aarch64.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_u64 (X0)
 
 getset_reg_u64 (X1)
 
 getset_reg_u64 (X2)
 
 getset_reg_u64 (X3)
 
 getset_reg_u64 (X4)
 
 getset_reg_u64 (X5)
 
 getset_reg_u64 (X6)
 
 getset_reg_u64 (X7)
 
 getset_reg_u64 (X8)
 
 getset_reg_u64 (X9)
 
 getset_reg_u64 (X10)
 
 getset_reg_u64 (X11)
 
 getset_reg_u64 (X12)
 
 getset_reg_u64 (X13)
 
 getset_reg_u64 (X14)
 
 getset_reg_u64 (X15)
 
 getset_reg_u64 (X16)
 
 getset_reg_u64 (X17)
 
 getset_reg_u64 (X18)
 
 getset_reg_u64 (X19)
 
 getset_reg_u64 (X20)
 
 getset_reg_u64 (X21)
 
 getset_reg_u64 (X22)
 
 getset_reg_u64 (X23)
 
 getset_reg_u64 (X24)
 
 getset_reg_u64 (X25)
 
 getset_reg_u64 (X26)
 
 getset_reg_u64 (X27)
 
 getset_reg_u64 (X28)
 
 getset_reg_u64 (X29)
 
 getset_reg_u64 (LR)
 
 getset_reg_u64 (SP)
 
 getset_reg_u64 (PC)
 
 getset_reg_u32 (zf)
 
 getset_reg_u32 (nf)
 
 getset_reg_u32 (of)
 
 getset_reg_u32 (cf)
 
 getset_reg_u32 (exception_flags)
 
 getset_reg_u32 (interrupt_num)
 
PyObject * get_gpreg_offset_all (void)
 
 MOD_INIT (JitCore_aarch64)
 

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/6]

getset_reg_u32 ( cf  )

◆ getset_reg_u32() [2/6]

getset_reg_u32 ( exception_flags  )

◆ getset_reg_u32() [3/6]

getset_reg_u32 ( interrupt_num  )

◆ getset_reg_u32() [4/6]

getset_reg_u32 ( nf  )

◆ getset_reg_u32() [5/6]

getset_reg_u32 ( of  )

◆ getset_reg_u32() [6/6]

getset_reg_u32 ( zf  )

◆ getset_reg_u64() [1/33]

getset_reg_u64 ( LR  )

◆ getset_reg_u64() [2/33]

getset_reg_u64 ( PC  )

◆ getset_reg_u64() [3/33]

getset_reg_u64 ( SP  )

◆ getset_reg_u64() [4/33]

getset_reg_u64 ( X0  )

◆ getset_reg_u64() [5/33]

getset_reg_u64 ( X1  )

◆ getset_reg_u64() [6/33]

getset_reg_u64 ( X10  )

◆ getset_reg_u64() [7/33]

getset_reg_u64 ( X11  )

◆ getset_reg_u64() [8/33]

getset_reg_u64 ( X12  )

◆ getset_reg_u64() [9/33]

getset_reg_u64 ( X13  )

◆ getset_reg_u64() [10/33]

getset_reg_u64 ( X14  )

◆ getset_reg_u64() [11/33]

getset_reg_u64 ( X15  )

◆ getset_reg_u64() [12/33]

getset_reg_u64 ( X16  )

◆ getset_reg_u64() [13/33]

getset_reg_u64 ( X17  )

◆ getset_reg_u64() [14/33]

getset_reg_u64 ( X18  )

◆ getset_reg_u64() [15/33]

getset_reg_u64 ( X19  )

◆ getset_reg_u64() [16/33]

getset_reg_u64 ( X2  )

◆ getset_reg_u64() [17/33]

getset_reg_u64 ( X20  )

◆ getset_reg_u64() [18/33]

getset_reg_u64 ( X21  )

◆ getset_reg_u64() [19/33]

getset_reg_u64 ( X22  )

◆ getset_reg_u64() [20/33]

getset_reg_u64 ( X23  )

◆ getset_reg_u64() [21/33]

getset_reg_u64 ( X24  )

◆ getset_reg_u64() [22/33]

getset_reg_u64 ( X25  )

◆ getset_reg_u64() [23/33]

getset_reg_u64 ( X26  )

◆ getset_reg_u64() [24/33]

getset_reg_u64 ( X27  )

◆ getset_reg_u64() [25/33]

getset_reg_u64 ( X28  )

◆ getset_reg_u64() [26/33]

getset_reg_u64 ( X29  )

◆ getset_reg_u64() [27/33]

getset_reg_u64 ( X3  )

◆ getset_reg_u64() [28/33]

getset_reg_u64 ( X4  )

◆ getset_reg_u64() [29/33]

getset_reg_u64 ( X5  )

◆ getset_reg_u64() [30/33]

getset_reg_u64 ( X6  )

◆ getset_reg_u64() [31/33]

getset_reg_u64 ( X7  )

◆ getset_reg_u64() [32/33]

getset_reg_u64 ( X8  )

◆ getset_reg_u64() [33/33]

getset_reg_u64 ( X9  )

◆ MEM_WRITE_08()

void MEM_WRITE_08 ( JitCpu jitcpu,
uint64_t  addr,
uint8_t  src 
)

◆ MEM_WRITE_16()

void MEM_WRITE_16 ( JitCpu jitcpu,
uint64_t  addr,
uint16_t  src 
)

◆ MEM_WRITE_32()

void MEM_WRITE_32 ( JitCpu jitcpu,
uint64_t  addr,
uint32_t  src 
)

◆ MEM_WRITE_64()

void MEM_WRITE_64 ( JitCpu jitcpu,
uint64_t  addr,
uint64_t  src 
)

◆ MOD_INIT()

MOD_INIT ( JitCore_aarch64  )

Variable Documentation

◆ gpreg_dict

reg_dict gpreg_dict[]