diff options
author | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2005-01-30 22:39:04 +0000 |
---|---|---|
committer | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2005-01-30 22:39:04 +0000 |
commit | af7bf89b1f525bb684f48ed0e847ad2d2d11c5e5 (patch) | |
tree | d82662323af4abbcc79a96d01940ddb39f89fe34 /target-sparc/exec.h | |
parent | 49be80301540be4445b2dc58d050a063988c85b4 (diff) | |
download | qemu-af7bf89b1f525bb684f48ed0e847ad2d2d11c5e5.zip qemu-af7bf89b1f525bb684f48ed0e847ad2d2d11c5e5.tar.gz qemu-af7bf89b1f525bb684f48ed0e847ad2d2d11c5e5.tar.bz2 |
initial sparc64 support - sparc fixes (Blue Swirl)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1251 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-sparc/exec.h')
-rw-r--r-- | target-sparc/exec.h | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/target-sparc/exec.h b/target-sparc/exec.h index f8edc17..1fa7d87 100644 --- a/target-sparc/exec.h +++ b/target-sparc/exec.h @@ -3,9 +3,15 @@ #include "dyngen-exec.h" register struct CPUSPARCState *env asm(AREG0); +#ifdef TARGET_SPARC64 +#define T0 (env->t0) +#define T1 (env->t1) +#define T2 (env->t2) +#else register uint32_t T0 asm(AREG1); register uint32_t T1 asm(AREG2); register uint32_t T2 asm(AREG3); +#endif #define FT0 (env->ft0) #define FT1 (env->ft1) #define FT2 (env->ft2) @@ -32,17 +38,19 @@ void do_fsqrts(void); void do_fsqrtd(void); void do_fcmps(void); void do_fcmpd(void); -void do_ldd_kernel(uint32_t addr); -void do_ldd_user(uint32_t addr); -void do_ldd_raw(uint32_t addr); +void do_ldd_kernel(target_ulong addr); +void do_ldd_user(target_ulong addr); +void do_ldd_raw(target_ulong addr); void do_interrupt(int intno, int is_int, int error_code, unsigned int next_eip, int is_hw); void raise_exception_err(int exception_index, int error_code); void raise_exception(int tt); -void memcpy32(uint32_t *dst, const uint32_t *src); -uint32_t mmu_probe(uint32_t address, int mmulev); +void memcpy32(target_ulong *dst, const target_ulong *src); +target_ulong mmu_probe(target_ulong address, int mmulev); void dump_mmu(void); void helper_debug(); +void do_wrpsr(); +void do_rdpsr(); /* XXX: move that to a generic header */ #if !defined(CONFIG_USER_ONLY) |