Statistics
| Branch: | Revision:

root / target-sparc / exec.h @ 3a3b925d

History | View | Annotate | Download (1.2 kB)

1
#ifndef EXEC_SPARC_H
2
#define EXEC_SPARC_H 1
3
#include "config.h"
4
#include "dyngen-exec.h"
5

    
6
register struct CPUSPARCState *env asm(AREG0);
7

    
8
#define FT0 (env->ft0)
9
#define FT1 (env->ft1)
10
#define DT0 (env->dt0)
11
#define DT1 (env->dt1)
12
#define QT0 (env->qt0)
13
#define QT1 (env->qt1)
14

    
15
#include "cpu.h"
16
#include "exec-all.h"
17

    
18
static inline void env_to_regs(void)
19
{
20
}
21

    
22
static inline void regs_to_env(void)
23
{
24
}
25

    
26
/* helper.c */
27
void cpu_lock(void);
28
void cpu_unlock(void);
29
int cpu_sparc_handle_mmu_fault(CPUState *env1, target_ulong address, int rw,
30
                               int mmu_idx, int is_softmmu);
31
target_ulong mmu_probe(CPUState *env, target_ulong address, int mmulev);
32
void dump_mmu(CPUState *env);
33

    
34
/* op_helper.c */
35
void do_interrupt(CPUState *env);
36

    
37
/* cpu-exec.c */
38
void cpu_loop_exit(void);
39
int cpu_sparc_signal_handler(int host_signum, void *pinfo, void *puc);
40

    
41
/* sun4m.c */
42
void cpu_check_irqs(CPUSPARCState *env);
43

    
44
static inline int cpu_halted(CPUState *env1) {
45
    if (!env1->halted)
46
        return 0;
47
    if ((env1->interrupt_request & CPU_INTERRUPT_HARD) && (env1->psret != 0)) {
48
        env1->halted = 0;
49
        return 0;
50
    }
51
    return EXCP_HALTED;
52
}
53

    
54
#endif