Statistics
| Branch: | Revision:

root / target-sparc / exec.h @ 49a945a3

History | View | Annotate | Download (681 Bytes)

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
/* op_helper.c */
17
void do_interrupt(CPUState *env);
18

    
19
static inline int cpu_has_work(CPUState *env1)
20
{
21
    return (env1->interrupt_request & CPU_INTERRUPT_HARD) &&
22
           cpu_interrupts_enabled(env1);
23
}
24

    
25

    
26
static inline int cpu_halted(CPUState *env1) {
27
    if (!env1->halted)
28
        return 0;
29
    if (cpu_has_work(env1)) {
30
        env1->halted = 0;
31
        return 0;
32
    }
33
    return EXCP_HALTED;
34
}
35

    
36
#endif