Statistics
| Branch: | Revision:

root / target-sparc / exec.h @ d84763bc

History | View | Annotate | Download (1.1 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 DT0 (env->dt0)
9
#define DT1 (env->dt1)
10
#define QT0 (env->qt0)
11
#define QT1 (env->qt1)
12

    
13
#include "cpu.h"
14
#include "exec-all.h"
15

    
16
static inline void env_to_regs(void)
17
{
18
}
19

    
20
static inline void regs_to_env(void)
21
{
22
}
23

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

    
32
/* op_helper.c */
33
void do_interrupt(CPUState *env);
34

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

    
39
/* sun4m.c */
40
void cpu_check_irqs(CPUSPARCState *env);
41

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

    
52
#endif