Statistics
| Branch: | Revision:

root / target-sparc / exec.h @ 4f7de373

History | View | Annotate | Download (957 Bytes)

1 7a3f1944 bellard
#ifndef EXEC_SPARC_H
2 7a3f1944 bellard
#define EXEC_SPARC_H 1
3 3475187d bellard
#include "config.h"
4 8294eba1 ths
#include "dyngen-exec.h"
5 7a3f1944 bellard
6 7a3f1944 bellard
register struct CPUSPARCState *env asm(AREG0);
7 3475187d bellard
#define REGWPTR env->regwptr
8 3475187d bellard
9 e8af50a3 bellard
#define FT0 (env->ft0)
10 e8af50a3 bellard
#define FT1 (env->ft1)
11 e8af50a3 bellard
#define DT0 (env->dt0)
12 e8af50a3 bellard
#define DT1 (env->dt1)
13 1f587329 blueswir1
#define QT0 (env->qt0)
14 1f587329 blueswir1
#define QT1 (env->qt1)
15 7a3f1944 bellard
16 7a3f1944 bellard
#include "cpu.h"
17 7a3f1944 bellard
#include "exec-all.h"
18 7a3f1944 bellard
19 0d1a29f9 bellard
static inline void env_to_regs(void)
20 0d1a29f9 bellard
{
21 aea3ce4c bellard
#if defined(reg_REGWPTR)
22 aea3ce4c bellard
    REGWPTR = env->regbase + (env->cwp * 16);
23 aea3ce4c bellard
    env->regwptr = REGWPTR;
24 aea3ce4c bellard
#endif
25 0d1a29f9 bellard
}
26 0d1a29f9 bellard
27 0d1a29f9 bellard
static inline void regs_to_env(void)
28 0d1a29f9 bellard
{
29 0d1a29f9 bellard
}
30 0d1a29f9 bellard
31 22548760 blueswir1
int cpu_sparc_handle_mmu_fault(CPUState *env1, target_ulong address, int rw,
32 6ebbf390 j_mayer
                               int mmu_idx, int is_softmmu);
33 4da450e6 blueswir1
void do_interrupt(int intno);
34 9d893301 bellard
35 22548760 blueswir1
static inline int cpu_halted(CPUState *env1) {
36 22548760 blueswir1
    if (!env1->halted)
37 bfed01fc ths
        return 0;
38 22548760 blueswir1
    if ((env1->interrupt_request & CPU_INTERRUPT_HARD) && (env1->psret != 0)) {
39 22548760 blueswir1
        env1->halted = 0;
40 bfed01fc ths
        return 0;
41 bfed01fc ths
    }
42 bfed01fc ths
    return EXCP_HALTED;
43 bfed01fc ths
}
44 bfed01fc ths
45 7a3f1944 bellard
#endif