Miasm2
 All Classes Namespaces Files Functions Variables Typedefs Properties Macros
Classes | Macros | Functions
JitCore_x86.h File Reference
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  vm_cpu_t
 

Macros

#define RETURN_PC   return BlockDst;
 

Functions

void dump_gpregs (vm_cpu_t *vmcpu)
 
uint64_t segm2addr (JitCpu *jitcpu, uint64_t segm, uint64_t addr)
 
uint64_t udiv64 (vm_cpu_t *vmcpu, uint64_t a, uint64_t b)
 
uint64_t umod64 (vm_cpu_t *vmcpu, uint64_t a, uint64_t b)
 
int64_t idiv64 (vm_cpu_t *vmcpu, int64_t a, int64_t b)
 
int64_t imod64 (vm_cpu_t *vmcpu, int64_t a, int64_t b)
 
uint32_t udiv32 (vm_cpu_t *vmcpu, uint32_t a, uint32_t b)
 
uint32_t umod32 (vm_cpu_t *vmcpu, uint32_t a, uint32_t b)
 
int32_t idiv32 (vm_cpu_t *vmcpu, int32_t a, int32_t b)
 
int32_t imod32 (vm_cpu_t *vmcpu, int32_t a, int32_t b)
 
uint16_t udiv16 (vm_cpu_t *vmcpu, uint16_t a, uint16_t b)
 
uint16_t umod16 (vm_cpu_t *vmcpu, uint16_t a, uint16_t b)
 
int16_t idiv16 (vm_cpu_t *vmcpu, int16_t a, int16_t b)
 
int16_t imod16 (vm_cpu_t *vmcpu, int16_t a, int16_t b)
 

Macro Definition Documentation

#define RETURN_PC   return BlockDst;

Definition at line 295 of file JitCore_x86.h.

Function Documentation

void dump_gpregs ( vm_cpu_t vmcpu)

Definition at line 154 of file JitCore_aarch64.c.

155 {
156  printf("X0 %.16"PRIX64" X1 %.16"PRIX64" X2 %.16"PRIX64" X3 %.16"PRIX64" "\
157  "X4 %.16"PRIX64" X5 %.16"PRIX64" X6 %.16"PRIX64" X7 %.16"PRIX64"\n",
158  vmcpu->X0, vmcpu->X1, vmcpu->X2, vmcpu->X3, vmcpu->X4, vmcpu->X5, vmcpu->X6, vmcpu->X7);
159  printf("X8 %.16"PRIX64" X9 %.16"PRIX64" X10 %.16"PRIX64" X11 %.16"PRIX64" "\
160  "X12 %.16"PRIX64" X13 %.16"PRIX64" X14 %.16"PRIX64" X15 %.16"PRIX64"\n",
161  vmcpu->X8, vmcpu->X9, vmcpu->X10, vmcpu->X11,
162  vmcpu->X12, vmcpu->X13, vmcpu->X14, vmcpu->X15);
163  printf("X16 %.16"PRIX64" X17 %.16"PRIX64" X18 %.16"PRIX64" X19 %.16"PRIX64" "\
164  "X20 %.16"PRIX64" X21 %.16"PRIX64" X22 %.16"PRIX64" X23 %.16"PRIX64"\n",
165  vmcpu->X16, vmcpu->X17, vmcpu->X18, vmcpu->X19,
166  vmcpu->X20, vmcpu->X21, vmcpu->X22, vmcpu->X23);
167  printf("X24 %.16"PRIX64" X25 %.16"PRIX64" X26 %.16"PRIX64" X27 %.16"PRIX64" "\
168  "X28 %.16"PRIX64" X29 %.16"PRIX64" LR %.16"PRIX64"\n",
169  vmcpu->X24, vmcpu->X25, vmcpu->X26, vmcpu->X27,
170  vmcpu->X28, vmcpu->X29, vmcpu->LR);
171 
172 
173  printf("SP %.16"PRIX64" PC %.16"PRIX64" "\
174  "zf %.16"PRIX32" nf %.16"PRIX32" of %.16"PRIX32" cf %.16"PRIX32"\n",
175  vmcpu->SP, vmcpu->PC,
176  vmcpu->zf, vmcpu->nf, vmcpu->of, vmcpu->cf);
177 }
uint64_t X24
uint64_t X12
uint64_t X9
uint64_t X5
uint64_t X8
uint64_t X1
uint32_t cf
uint64_t PC
uint64_t LR
uint64_t X17
uint32_t nf
uint64_t X11
uint64_t X14
uint32_t of
uint64_t X16
uint64_t X23
uint64_t X13
uint64_t X4
uint64_t X0
uint64_t X25
uint64_t X20
uint64_t X15
uint64_t X29
uint64_t X2
uint64_t X22
uint64_t SP
uint64_t X3
uint64_t X19
uint64_t X7
uint64_t X28
uint64_t X21
uint64_t X6
uint64_t X18
uint64_t X27
uint64_t X10
uint32_t zf
uint64_t X26

+ Here is the caller graph for this function:

int16_t idiv16 ( vm_cpu_t vmcpu,
int16_t  a,
int16_t  b 
)
int32_t idiv32 ( vm_cpu_t vmcpu,
int32_t  a,
int32_t  b 
)
int64_t idiv64 ( vm_cpu_t vmcpu,
int64_t  a,
int64_t  b 
)
int16_t imod16 ( vm_cpu_t vmcpu,
int16_t  a,
int16_t  b 
)
int32_t imod32 ( vm_cpu_t vmcpu,
int32_t  a,
int32_t  b 
)
int64_t imod64 ( vm_cpu_t vmcpu,
int64_t  a,
int64_t  b 
)
uint64_t segm2addr ( JitCpu jitcpu,
uint64_t  segm,
uint64_t  addr 
)

Definition at line 233 of file JitCore_x86.c.

234 {
235  return addr + ((vm_cpu_t*)jitcpu->cpu)->segm_base[segm];
236 }
void * cpu
Definition: JitCore.h:97
uint16_t udiv16 ( vm_cpu_t vmcpu,
uint16_t  a,
uint16_t  b 
)
uint32_t udiv32 ( vm_cpu_t vmcpu,
uint32_t  a,
uint32_t  b 
)
uint64_t udiv64 ( vm_cpu_t vmcpu,
uint64_t  a,
uint64_t  b 
)
uint16_t umod16 ( vm_cpu_t vmcpu,
uint16_t  a,
uint16_t  b 
)
uint32_t umod32 ( vm_cpu_t vmcpu,
uint32_t  a,
uint32_t  b 
)
uint64_t umod64 ( vm_cpu_t vmcpu,
uint64_t  a,
uint64_t  b 
)