Statistics
| Branch: | Revision:

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

History | View | Annotate | Download (681 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
8 e8af50a3 bellard
#define DT0 (env->dt0)
9 e8af50a3 bellard
#define DT1 (env->dt1)
10 1f587329 blueswir1
#define QT0 (env->qt0)
11 1f587329 blueswir1
#define QT1 (env->qt1)
12 7a3f1944 bellard
13 7a3f1944 bellard
#include "cpu.h"
14 7a3f1944 bellard
#include "exec-all.h"
15 7a3f1944 bellard
16 91736d37 blueswir1
/* op_helper.c */
17 f2bc7e7f blueswir1
void do_interrupt(CPUState *env);
18 9d893301 bellard
19 6a4955a8 aliguori
static inline int cpu_has_work(CPUState *env1)
20 6a4955a8 aliguori
{
21 6a4955a8 aliguori
    return (env1->interrupt_request & CPU_INTERRUPT_HARD) &&
22 5210977a Igor Kovalenko
           cpu_interrupts_enabled(env1);
23 6a4955a8 aliguori
}
24 6a4955a8 aliguori
25 6a4955a8 aliguori
26 22548760 blueswir1
static inline int cpu_halted(CPUState *env1) {
27 22548760 blueswir1
    if (!env1->halted)
28 bfed01fc ths
        return 0;
29 6a4955a8 aliguori
    if (cpu_has_work(env1)) {
30 22548760 blueswir1
        env1->halted = 0;
31 bfed01fc ths
        return 0;
32 bfed01fc ths
    }
33 bfed01fc ths
    return EXCP_HALTED;
34 bfed01fc ths
}
35 bfed01fc ths
36 7a3f1944 bellard
#endif