diff options
Diffstat (limited to 'src/miasm/jitter/arch/JitCore_m68k.h')
| -rw-r--r-- | src/miasm/jitter/arch/JitCore_m68k.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/src/miasm/jitter/arch/JitCore_m68k.h b/src/miasm/jitter/arch/JitCore_m68k.h new file mode 100644 index 00000000..6ff6b326 --- /dev/null +++ b/src/miasm/jitter/arch/JitCore_m68k.h @@ -0,0 +1,55 @@ + +struct vm_cpu { + uint32_t exception_flags; + uint32_t interrupt_num; + + /* gpregs */ + uint32_t A0; + uint32_t A1; + uint32_t A2; + uint32_t A3; + uint32_t A4; + uint32_t A5; + uint32_t A6; + uint32_t SP; + + uint32_t D0; + uint32_t D1; + uint32_t D2; + uint32_t D3; + uint32_t D4; + uint32_t D5; + uint32_t D6; + uint32_t D7; + + + uint32_t PC; + + /* eflag */ + uint32_t zf; + uint32_t nf; + uint32_t vf; + uint32_t cf; + uint32_t xf; + + uint64_t float_st0; + uint64_t float_st1; + uint64_t float_st2; + uint64_t float_st3; + uint64_t float_st4; + uint64_t float_st5; + uint64_t float_st6; + uint64_t float_st7; + + uint32_t bp_num; +}; + + +_MIASM_EXPORT void dump_gpregs(struct vm_cpu* vmcpu); + +_MIASM_EXPORT void MEM_WRITE_08(JitCpu* jitcpu, uint64_t addr, uint8_t src); +_MIASM_EXPORT void MEM_WRITE_16(JitCpu* jitcpu, uint64_t addr, uint16_t src); +_MIASM_EXPORT void MEM_WRITE_32(JitCpu* jitcpu, uint64_t addr, uint32_t src); +_MIASM_EXPORT void MEM_WRITE_64(JitCpu* jitcpu, uint64_t addr, uint64_t src); + +#define RETURN_PC return BlockDst; |