Lines Matching refs:env
42 int (*map_address) (struct CPUMIPSState *env, target_phys_addr_t *physical, int *prot, target_ulong address, int rw, int access_type);
88 #define SET_FP_COND(num,env) do { ((env).fcr31) |= ((num) ? (1 << ((num) + 24)) : (1 << 23)); } while(0)
89 #define CLEAR_FP_COND(num,env) do { ((env).fcr31) &= ~((num) ? (1 << ((num) + 24)) : (1 << 23)); } while(0)
90 #define GET_FP_COND(env) ((((env).fcr31 >> 24) & 0xfe) | (((env).fcr31 >> 23) & 0x1))
468 int no_mmu_map_address (CPUMIPSState *env, target_phys_addr_t *physical, int *prot,
470 int fixed_mmu_map_address (CPUMIPSState *env, target_phys_addr_t *physical, int *prot,
472 int r4k_map_address (CPUMIPSState *env, target_phys_addr_t *physical, int *prot,
497 static inline int cpu_mmu_index (CPUState *env)
499 return env->hflags & MIPS_HFLAG_KSU;
502 static inline int is_cpu_user (CPUState *env)
507 return ((env->CP0_Status &
512 static inline void cpu_clone_regs(CPUState *env, target_ulong newsp)
515 env->active_tc.gpr[29] = newsp;
516 env->active_tc.gpr[7] = 0;
517 env->active_tc.gpr[2] = 0;
520 static inline int cpu_mips_hw_interrupts_pending(CPUState *env)
526 if (!(env->CP0_Status & (1 << CP0St_IE)) ||
527 (env->CP0_Status & (1 << CP0St_EXL)) ||
528 (env->CP0_Status & (1 << CP0St_ERL)) ||
529 (env->hflags & MIPS_HFLAG_DM)) {
534 pending = env->CP0_Cause & CP0Ca_IP_mask;
535 status = env->CP0_Status & CP0Ca_IP_mask;
537 if (env->CP0_Config3 & (1 << CP0C3_VEIC)) {
617 uint32_t cpu_mips_get_random (CPUState *env);
618 uint32_t cpu_mips_get_count (CPUState *env);
619 void cpu_mips_store_count (CPUState *env, uint32_t value);
620 void cpu_mips_store_compare (CPUState *env, uint32_t value);
621 void cpu_mips_start_count(CPUState *env);
622 void cpu_mips_stop_count(CPUState *env);
625 void cpu_mips_update_irq (CPUState *env);
628 int cpu_mips_handle_mmu_fault (CPUState *env, target_ulong address, int rw,
631 void do_interrupt (CPUState *env);
632 target_phys_addr_t cpu_mips_translate_address (CPUState *env, target_ulong address,
635 static inline void cpu_pc_from_tb(CPUState *env, TranslationBlock *tb)
637 env->active_tc.PC = tb->pc;
638 env->hflags &= ~MIPS_HFLAG_BMASK;
639 env->hflags |= tb->flags & MIPS_HFLAG_BMASK;
642 static inline void cpu_get_tb_cpu_state(CPUState *env, target_ulong *pc,
645 *pc = env->active_tc.PC;
647 *flags = env->hflags & (MIPS_HFLAG_TMASK | MIPS_HFLAG_BMASK);
650 static inline void cpu_set_tls(CPUState *env, target_ulong newtls)
652 env->tls_value = newtls;