10 #ifndef TEMU_TARGET_ARM_H
11 #define TEMU_TARGET_ARM_H
13 #include "temu-c/Support/Objsys.h"
36 uint32_t (*getBankedRegister)(
void *Obj, temu_ARMMode Mode,
unsigned Reg);
37 temu_ARMMode (*getMode)(
void *Obj);
38 temu_ARMExecMode (*getExecMode)(
void *Obj);
41 uint32_t (*getAPSR)(
void *Obj);
42 void (*
setAPSR)(
void *Obj, uint32_t Value);
44 uint32_t (*getFpscr)(
const void *Cpu);
47 uint32_t (*getFpexc)(
const void *Cpu);
50 uint32_t (*getFpinst)(
const void *Cpu,
int idx);
51 void (*
setFpinst)(
void *Cpu,
int idx, uint32_t Value);
53 #define TEMU_ARM_CPU_IFACE_TYPE "ARMCpu"
54 TEMU_IFACE_REFERENCE_TYPE(temu_ARMCpu);
58 uint8_t (*accepts)(
void *Obj, uint32_t cp, uint32_t instr);
60 uint32_t (*getOneWord)(
void *Obj, uint32_t cp, uint32_t instr);
62 uint64_t (*getTwoWords)(
void *Obj, uint32_t cp, uint32_t instr);
63 void (*
sendOneWord)(
void *Obj, uint32_t t, uint32_t cp, uint32_t instr);
64 void (*
sendTwoWords)(
void *Obj, uint32_t t2, uint32_t t, uint32_t cp, uint32_t instr);
65 } temu_ARMCoProcessorIface;
67 #define TEMU_ARM_COPROC_IFACE_TYPE "ARMCoProcessor"
68 TEMU_IFACE_REFERENCE_TYPE(temu_ARMCoProcessor);