Miasm2
 All Classes Namespaces Files Functions Variables Typedefs Properties Macros
Functions
JitCore.c File Reference
#include <Python.h>
#include "structmember.h"
#include <stdint.h>
#include <inttypes.h>
#include "queue.h"
#include "vm_mngr.h"
#include "vm_mngr_py.h"
#include "JitCore.h"
+ Include dependency graph for JitCore.c:

Go to the source code of this file.

Functions

void JitCpu_dealloc (JitCpu *self)
 
PyObject * JitCpu_new (PyTypeObject *type, PyObject *args, PyObject *kwds)
 
PyObject * JitCpu_get_vmmngr (JitCpu *self, void *closure)
 
PyObject * JitCpu_set_vmmngr (JitCpu *self, PyObject *value, void *closure)
 
PyObject * JitCpu_get_jitter (JitCpu *self, void *closure)
 
PyObject * JitCpu_set_jitter (JitCpu *self, PyObject *value, void *closure)
 
void Resolve_dst (block_id *b, uint64_t addr, uint64_t is_local)
 
uint8_t __attribute__ ((weak))
 

Function Documentation

PyObject * __attribute__ ( (weak)  )

Definition at line 67 of file JitCore.c.

68 {
69  return vm_MEM_LOOKUP_08(&((VmMngr*)jitcpu->pyvm)->vm_mngr, addr);
70 }
unsigned char vm_MEM_LOOKUP_08(vm_mngr_t *vm_mngr, uint64_t addr)
Definition: vm_mngr.c:460

+ Here is the call graph for this function:

void JitCpu_dealloc ( JitCpu self)

Definition at line 11 of file JitCore.c.

12 {
13  self->ob_type->tp_free((PyObject*)self);
14 }
PyObject* JitCpu_get_jitter ( JitCpu self,
void *  closure 
)

Definition at line 41 of file JitCore.c.

42 {
43  if (self->jitter) {
44  Py_INCREF(self->jitter);
45  return self->jitter;
46  }
47  Py_INCREF(Py_None);
48  return Py_None;
49 }
PyObject * jitter
Definition: JitCore.h:96
PyObject* JitCpu_get_vmmngr ( JitCpu self,
void *  closure 
)

Definition at line 25 of file JitCore.c.

26 {
27  if (self->pyvm) {
28  Py_INCREF(self->pyvm);
29  return self->pyvm;
30  }
31  Py_INCREF(Py_None);
32  return Py_None;
33 }
PyObject_HEAD PyObject * pyvm
Definition: JitCore.h:95
PyObject* JitCpu_new ( PyTypeObject *  type,
PyObject *  args,
PyObject *  kwds 
)

Definition at line 17 of file JitCore.c.

18 {
19  JitCpu *self;
20 
21  self = (JitCpu *)type->tp_alloc(type, 0);
22  return (PyObject *)self;
23 }
Definition: JitCore.h:93
PyObject* JitCpu_set_jitter ( JitCpu self,
PyObject *  value,
void *  closure 
)

Definition at line 51 of file JitCore.c.

52 {
53  self->jitter = value;
54  return 0;
55 }
PyObject* JitCpu_set_vmmngr ( JitCpu self,
PyObject *  value,
void *  closure 
)

Definition at line 35 of file JitCore.c.

36 {
37  self->pyvm = value;
38  return 0;
39 }
void Resolve_dst ( block_id b,
uint64_t  addr,
uint64_t  is_local 
)

Definition at line 58 of file JitCore.c.

59 {
60  b->address = addr;
61  b->is_local = is_local;
62 }
uint8_t is_local
Definition: JitCore.h:89
uint64_t address
Definition: JitCore.h:90