diff options
author | pbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-11-11 00:04:49 +0000 |
---|---|---|
committer | pbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-11-11 00:04:49 +0000 |
commit | 9ee6e8bb853bdea7ef6c645a1a07aa55fd206aba (patch) | |
tree | 1cd430d3d9ac641c8550cfd8956dbcce1a4b9121 /target-arm/exec.h | |
parent | ee4e83ed8ddc8dac572a0123398adf78b63014ae (diff) |
ARMv7 support.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3572 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-arm/exec.h')
-rw-r--r-- | target-arm/exec.h | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/target-arm/exec.h b/target-arm/exec.h index 0c53b8d5f5..cb202062d5 100644 --- a/target-arm/exec.h +++ b/target-arm/exec.h @@ -68,12 +68,18 @@ static inline int cpu_halted(CPUState *env) { /* In op_helper.c */ -void cpu_lock(void); -void cpu_unlock(void); void helper_set_cp(CPUState *, uint32_t, uint32_t); uint32_t helper_get_cp(CPUState *, uint32_t); void helper_set_cp15(CPUState *, uint32_t, uint32_t); uint32_t helper_get_cp15(CPUState *, uint32_t); +void helper_set_r13_banked(CPUState *env, int mode, uint32_t val); +uint32_t helper_get_r13_banked(CPUState *env, int mode); +uint32_t helper_v7m_mrs(CPUState *env, int reg); +void helper_v7m_msr(CPUState *env, int reg, uint32_t val); + +void helper_mark_exclusive(CPUARMState *, uint32_t addr); +int helper_test_exclusive(CPUARMState *, uint32_t addr); +void helper_clrex(CPUARMState *env); void cpu_loop_exit(void); @@ -91,4 +97,11 @@ void do_vfp_cmpes(void); void do_vfp_cmped(void); void do_vfp_set_fpscr(void); void do_vfp_get_fpscr(void); - +float32 helper_recps_f32(float32, float32); +float32 helper_rsqrts_f32(float32, float32); +uint32_t helper_recpe_u32(uint32_t); +uint32_t helper_rsqrte_u32(uint32_t); +float32 helper_recpe_f32(float32); +float32 helper_rsqrte_f32(float32); +void helper_neon_tbl(int rn, int maxindex); +uint32_t helper_neon_mul_p8(uint32_t op1, uint32_t op2); |