Annotation of qemu/target-sparc/exec.h, revision 1.1.1.6

1.1       root        1: #ifndef EXEC_SPARC_H
                      2: #define EXEC_SPARC_H 1
                      3: #include "config.h"
1.1.1.4   root        4: #include "dyngen-exec.h"
1.1       root        5: 
                      6: register struct CPUSPARCState *env asm(AREG0);
1.1.1.3   root        7: 
1.1       root        8: #define DT0 (env->dt0)
                      9: #define DT1 (env->dt1)
1.1.1.4   root       10: #define QT0 (env->qt0)
                     11: #define QT1 (env->qt1)
1.1       root       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: 
1.1.1.5   root       24: /* op_helper.c */
                     25: void do_interrupt(CPUState *env);
1.1.1.4   root       26: 
1.1.1.6 ! root       27: static inline int cpu_interrupts_enabled(CPUState *env1)
        !            28: {
        !            29: #if !defined (TARGET_SPARC64)
        !            30:     if (env1->psret != 0)
        !            31:         return 1;
        !            32: #else
        !            33:     if (env1->pstate & PS_IE)
        !            34:         return 1;
        !            35: #endif
        !            36: 
        !            37:     return 0;
        !            38: }
        !            39: 
        !            40: static inline int cpu_has_work(CPUState *env1)
        !            41: {
        !            42:     return (env1->interrupt_request & CPU_INTERRUPT_HARD) &&
        !            43:            cpu_interrupts_enabled(env1);
        !            44: }
        !            45: 
        !            46: 
1.1.1.5   root       47: static inline int cpu_halted(CPUState *env1) {
                     48:     if (!env1->halted)
1.1.1.4   root       49:         return 0;
1.1.1.6 ! root       50:     if (cpu_has_work(env1)) {
1.1.1.5   root       51:         env1->halted = 0;
1.1.1.4   root       52:         return 0;
                     53:     }
                     54:     return EXCP_HALTED;
                     55: }
1.1       root       56: 
                     57: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.