/openbmc/qemu/target/hppa/ |
H A D | helper.c | 30 target_ulong psw; in cpu_hppa_get_psw() local 38 psw |= psw >> 3; in cpu_hppa_get_psw() 40 psw |= psw >> 6; in cpu_hppa_get_psw() 41 psw &= maskf; in cpu_hppa_get_psw() 43 psw |= psw >> 12; in cpu_hppa_get_psw() 50 psw = (psw & 0xff00000000ull) | ((psw & 0xff) << 8); in cpu_hppa_get_psw() 52 psw = (psw & 0xff) << 8; in cpu_hppa_get_psw() 57 psw |= env->psw; in cpu_hppa_get_psw() 59 return psw; in cpu_hppa_get_psw() 77 psw &= ~reserved; in cpu_hppa_put_psw() [all …]
|
H A D | cpu.h | 189 target_ulong psw; /* All psw bits except the following: */ member 289 if (env->psw & (ifetch ? PSW_C : PSW_D)) { in cpu_mmu_index() 290 return PRIV_P_TO_MMU_IDX(env->iaoq_f & 3, env->psw & PSW_P); in cpu_mmu_index() 293 return env->psw & PSW_W ? MMU_ABS_W_IDX : MMU_ABS_IDX; in cpu_mmu_index() 301 static inline target_ulong hppa_form_gva_psw(target_ulong psw, uint64_t spc, in hppa_form_gva_psw() argument 307 off &= psw & PSW_W ? MAKE_64BIT_MASK(0, 62) : MAKE_64BIT_MASK(0, 32); in hppa_form_gva_psw() 315 return hppa_form_gva_psw(env->psw, spc, off); in hppa_form_gva() 345 flags |= env->psw & (PSW_W | PSW_C | PSW_D | PSW_P); in cpu_get_tb_cpu_state() 348 *pc = hppa_form_gva_psw(env->psw, (env->psw & PSW_C ? env->iasq_f : 0), in cpu_get_tb_cpu_state()
|
H A D | sys_helper.c | 63 target_ulong psw = env->psw; in HELPER() local 73 env->psw = (psw & ~PSW_SM) | (nsm & PSW_SM); in HELPER() 74 return psw & PSW_SM; in HELPER()
|
/openbmc/linux/arch/sh/drivers/ |
H A D | push-switch.c | 28 struct push_switch *psw = from_timer(psw, t, debounce); in switch_timer() local 30 schedule_work(&psw->work); in switch_timer() 38 psw->state = 0; in switch_work_handler() 46 struct push_switch *psw; in switch_drv_probe() local 50 if (unlikely(!psw)) in switch_drv_probe() 81 psw->pdev = pdev; in switch_drv_probe() 83 platform_set_drvdata(pdev, psw); in switch_drv_probe() 90 kfree(psw); in switch_drv_probe() 104 timer_shutdown_sync(&psw->debounce); in switch_drv_remove() 105 flush_work(&psw->work); in switch_drv_remove() [all …]
|
/openbmc/qemu/target/rx/ |
H A D | cpu.h | 143 void rx_cpu_unpack_psw(CPURXState *env, uint32_t psw, int rte); 171 uint32_t psw = 0; in rx_cpu_pack_psw() local 172 psw = FIELD_DP32(psw, PSW, IPL, env->psw_ipl); in rx_cpu_pack_psw() 173 psw = FIELD_DP32(psw, PSW, PM, env->psw_pm); in rx_cpu_pack_psw() 174 psw = FIELD_DP32(psw, PSW, U, env->psw_u); in rx_cpu_pack_psw() 175 psw = FIELD_DP32(psw, PSW, I, env->psw_i); in rx_cpu_pack_psw() 176 psw = FIELD_DP32(psw, PSW, O, env->psw_o >> 31); in rx_cpu_pack_psw() 177 psw = FIELD_DP32(psw, PSW, S, env->psw_s >> 31); in rx_cpu_pack_psw() 178 psw = FIELD_DP32(psw, PSW, Z, env->psw_z == 0); in rx_cpu_pack_psw() 179 psw = FIELD_DP32(psw, PSW, C, env->psw_c); in rx_cpu_pack_psw() [all …]
|
H A D | helper.c | 26 void rx_cpu_unpack_psw(CPURXState *env, uint32_t psw, int rte) in rx_cpu_unpack_psw() argument 29 env->psw_ipl = FIELD_EX32(psw, PSW, IPL); in rx_cpu_unpack_psw() 32 env->psw_pm = FIELD_EX32(psw, PSW, PM); in rx_cpu_unpack_psw() 34 env->psw_u = FIELD_EX32(psw, PSW, U); in rx_cpu_unpack_psw() 35 env->psw_i = FIELD_EX32(psw, PSW, I); in rx_cpu_unpack_psw() 37 env->psw_o = FIELD_EX32(psw, PSW, O) << 31; in rx_cpu_unpack_psw() 38 env->psw_s = FIELD_EX32(psw, PSW, S) << 31; in rx_cpu_unpack_psw() 39 env->psw_z = 1 - FIELD_EX32(psw, PSW, Z); in rx_cpu_unpack_psw() 40 env->psw_c = FIELD_EX32(psw, PSW, C); in rx_cpu_unpack_psw()
|
H A D | gdbstub.c | 58 uint32_t psw; in rx_cpu_gdb_write_register() local 83 psw = ldl_p(mem_buf); in rx_cpu_gdb_write_register() 84 rx_cpu_unpack_psw(env, psw, 1); in rx_cpu_gdb_write_register()
|
/openbmc/linux/arch/s390/include/asm/ |
H A D | processor.h | 219 regs->psw.addr = new_psw; \ 226 regs->psw.addr = new_psw; \ 300 static inline void __load_psw(psw_t psw) in __load_psw() argument 312 psw_t psw; in __load_psw_mask() local 314 psw.mask = mask; in __load_psw_mask() 321 : "=&d" (addr), "=Q" (psw.addr) : "Q" (psw) : "memory", "cc"); in __load_psw_mask() 352 mask = (psw.mask & PSW_MASK_EA) ? -1UL : in __rewind_psw() 355 return (psw.addr - ilc) & mask; in __rewind_psw() 363 psw_t psw; in disabled_wait() local 366 psw.addr = _THIS_IP_; in disabled_wait() [all …]
|
/openbmc/linux/arch/s390/kernel/ |
H A D | dumpstack.c | 156 struct psw_bits *psw = &psw_bits(regs->psw); in show_registers() local 160 printk("%s PSW : %px %px", mode, (void *)regs->psw.mask, (void *)regs->psw.addr); in show_registers() 162 pr_cont(" (%pSR)", (void *)regs->psw.addr); in show_registers() 165 "P:%x AS:%x CC:%x PM:%x", psw->per, psw->dat, psw->io, psw->ext, in show_registers() 166 psw->key, psw->mcheck, psw->wait, psw->pstate, psw->as, psw->cc, psw->pm); in show_registers() 167 pr_cont(" RI:%x EA:%x\n", psw->ri, psw->eaba); in show_registers()
|
H A D | uprobes.c | 39 regs->psw.addr = current->utask->xol_vaddr; in arch_uprobe_pre_xol() 57 if (!(regs->psw.mask & PSW_MASK_PER)) in check_per_event() 99 regs->psw.addr = utask->vaddr + ilen; in arch_uprobe_post_xol() 140 regs->psw.addr = current->utask->vaddr; in arch_uprobe_abort_xol() 167 psw->addr = __rewind_psw(*psw, -len); in adjust_psw_addr() 217 psw_bits((regs)->psw).cc = 1; \ 219 psw_bits((regs)->psw).cc = 2; \ 221 psw_bits((regs)->psw).cc = 0; \ 247 if (!(regs->psw.mask & PSW_MASK_PER)) in sim_stor_event() 357 adjust_psw_addr(®s->psw, ilen); in handle_insn_ril() [all …]
|
H A D | signal.c | 129 user_sregs.regs.psw.addr = regs->psw.addr; in save_sigregs() 157 regs->psw.mask = (regs->psw.mask & ~(PSW_MASK_USER | PSW_MASK_RI)) | in restore_sigregs() 161 regs->psw.mask = PSW_ASC_PRIMARY | in restore_sigregs() 162 (regs->psw.mask & ~PSW_MASK_ASC); in restore_sigregs() 164 if (regs->psw.mask & PSW_MASK_EA) in restore_sigregs() 165 regs->psw.mask |= PSW_MASK_BA; in restore_sigregs() 166 regs->psw.addr = user_sregs.regs.psw.addr; in restore_sigregs() 347 (regs->psw.mask & ~PSW_MASK_ASC); in setup_frame() 486 regs->psw.addr = in arch_do_signal_or_restart() 487 __rewind_psw(regs->psw, in arch_do_signal_or_restart() [all …]
|
H A D | compat_signal.c | 72 user_sregs.regs.psw.mask = (__u32)(regs->psw.mask >> 32); in save_sigregs32() 75 user_sregs.regs.psw.addr = (__u32) regs->psw.addr | in save_sigregs32() 76 (__u32)(regs->psw.mask & PSW_MASK_BA); in save_sigregs32() 106 regs->psw.mask = (regs->psw.mask & ~(PSW_MASK_USER | PSW_MASK_RI)) | in restore_sigregs32() 112 regs->psw.mask = PSW_ASC_PRIMARY | in restore_sigregs32() 113 (regs->psw.mask & ~PSW_MASK_ASC); in restore_sigregs32() 114 regs->psw.addr = (__u64)(user_sregs.regs.psw.addr & PSW32_ADDR_INSN); in restore_sigregs32() 314 regs->psw.mask = PSW_MASK_BA | in setup_frame32() 316 (regs->psw.mask & ~PSW_MASK_ASC); in setup_frame32() 393 regs->psw.mask = PSW_MASK_BA | in setup_rt_frame32() [all …]
|
H A D | kprobes.c | 236 kcb->kprobe_saved_imask = regs->psw.mask & in enable_singlestep() 241 regs->psw.mask |= PSW_MASK_PER; in enable_singlestep() 242 regs->psw.mask &= ~(PSW_MASK_IO | PSW_MASK_EXT); in enable_singlestep() 243 regs->psw.addr = ip; in enable_singlestep() 253 regs->psw.mask &= ~PSW_MASK_PER; in disable_singlestep() 254 regs->psw.mask |= kcb->kprobe_saved_imask; in disable_singlestep() 255 regs->psw.addr = ip; in disable_singlestep() 319 p = get_kprobe((void *)(regs->psw.addr - 2)); in kprobe_handler() 376 unsigned long ip = regs->psw.addr; in resume_execution() 419 if (regs->psw.mask & PSW_MASK_PER) in post_kprobe_handler() [all …]
|
/openbmc/linux/arch/s390/boot/ |
H A D | pgm_check_info.c | 149 struct psw_bits *psw = &psw_bits(S390_lowcore.psw_save_area); in print_pgm_check_info() local 164 psw->per, psw->dat, psw->io, psw->ext, psw->key, psw->mcheck, in print_pgm_check_info() 165 psw->wait, psw->pstate, psw->as, psw->cc, psw->pm, psw->ri, in print_pgm_check_info() 166 psw->eaba); in print_pgm_check_info()
|
/openbmc/qemu/linux-user/s390x/ |
H A D | cpu_loop.c | 80 env->psw.addr += env->int_svc_ilen; in cpu_loop() 85 env->psw.addr -= env->int_svc_ilen; in cpu_loop() 162 addr = env->psw.addr; in cpu_loop() 166 env->psw.addr += env->int_pgm_ilen; in cpu_loop() 189 env->psw.mask = regs->psw.mask; in target_cpu_copy_regs() 190 env->psw.addr = regs->psw.addr; in target_cpu_copy_regs()
|
H A D | signal.c | 37 target_psw_t psw; member 134 __put_user(psw_mask, &sregs->regs.psw.mask); in save_sigregs() 135 __put_user(env->psw.addr, &sregs->regs.psw.addr); in save_sigregs() 222 env->psw.mask = PSW_MASK_64 | PSW_MASK_32 | PSW_ASC_PRIMARY in setup_frame() 223 | (env->psw.mask & ~PSW_MASK_ASC); in setup_frame() 224 env->psw.addr = ka->_sa_handler; in setup_frame() 289 | (env->psw.mask & ~PSW_MASK_ASC); in setup_rt_frame() 290 env->psw.addr = ka->_sa_handler; in setup_rt_frame() 307 prev_addr = env->psw.addr; in restore_sigregs() 308 __get_user(mask, &sc->regs.psw.mask); in restore_sigregs() [all …]
|
/openbmc/linux/arch/sh/boards/mach-highlander/ |
H A D | psw.c | 19 struct push_switch *psw = platform_get_drvdata(pdev); in psw_irq_handler() local 27 if (psw->state) { in psw_irq_handler() 35 psw->state = !!(mask & (1 << psw_info->bit)); in psw_irq_handler() 36 if (psw->state) /* debounce */ in psw_irq_handler() 37 mod_timer(&psw->debounce, jiffies + 50); in psw_irq_handler()
|
/openbmc/qemu/target/s390x/tcg/ |
H A D | excp_helper.c | 43 env->psw.addr); in tcg_s390_program_interrupt() 163 if (!(env->psw.mask & PSW_MASK_64)) { in s390_cpu_tlb_fill() 169 if (!(env->psw.mask & PSW_MASK_64)) { in s390_cpu_tlb_fill() 259 env->psw.addr += ilen; in do_program_interrupt() 265 env->psw.addr); in do_program_interrupt() 331 if (!(env->psw.mask & PSW_MASK_EXT)) { in do_ext_interrupt() 394 g_assert(env->psw.mask & PSW_MASK_IO); in do_io_interrupt() 454 g_assert(env->psw.mask & PSW_MASK_MCHECK); in do_mchk_interrupt() 506 __func__, cs->exception_index, env->psw.mask, env->psw.addr); in s390_cpu_do_interrupt() 592 if (env->psw.mask & PSW_MASK_WAIT) { in s390_cpu_exec_interrupt() [all …]
|
H A D | cc_helper.c | 490 if (!(env->psw.mask & PSW_MASK_DAT)) { in HELPER() 496 env->psw.mask &= ~PSW_MASK_ASC; in HELPER() 497 env->psw.mask |= PSW_ASC_PRIMARY; in HELPER() 500 env->psw.mask &= ~PSW_MASK_ASC; in HELPER() 501 env->psw.mask |= PSW_ASC_SECONDARY; in HELPER() 504 if ((env->psw.mask & PSW_MASK_PSTATE) != 0) { in HELPER() 507 env->psw.mask &= ~PSW_MASK_ASC; in HELPER() 508 env->psw.mask |= PSW_ASC_HOME; in HELPER()
|
/openbmc/qemu/target/s390x/ |
H A D | helper.c | 47 uint64_t asc = env->psw.mask & PSW_MASK_ASC; in s390_cpu_get_phys_page_debug() 51 if (!(env->psw.mask & PSW_MASK_64)) { in s390_cpu_get_phys_page_debug() 93 if (is_special_wait_psw(cpu->env.psw.addr)) { in s390_handle_wait() 129 lowcore->restart_old_psw.addr = cpu_to_be64(env->psw.addr); in do_restart_interrupt() 150 if (!(env->psw.mask & PSW_MASK_PER)) { in s390_cpu_recompute_watchpoints() 181 PSW psw; /* 0x0100 */ member 225 sa->psw.addr = cpu_to_be64(cpu->env.psw.addr); in s390_store_status() 226 sa->psw.mask = cpu_to_be64(s390_cpu_get_psw_mask(&cpu->env)); in s390_store_status()
|
H A D | cpu-sysemu.c | 50 cpu->env.psw.mask = spsw & PSW_MASK_SHORT_CTRL; in s390_cpu_load_normal() 55 cpu->env.psw.mask ^= PSW_MASK_SHORTPSW; in s390_cpu_load_normal() 56 cpu->env.psw.addr = spsw & PSW_MASK_SHORT_ADDR; in s390_cpu_load_normal() 84 panic_info->u.s390.psw_mask = cpu->env.psw.mask; in s390_cpu_get_crash_info() 85 panic_info->u.s390.psw_addr = cpu->env.psw.addr; in s390_cpu_get_crash_info() 177 return cpu->halted && !(S390_CPU(cpu)->env.psw.mask & in disabled_wait() 241 if (!tcg_enabled() || !(cpu->env.psw.mask & PSW_MASK_WAIT)) { in s390_cpu_set_state()
|
H A D | cpu.c | 69 uint64_t old_mask = env->psw.mask; in s390_cpu_set_psw() 72 env->psw.addr = addr; in s390_cpu_set_psw() 73 env->psw.mask = mask; in s390_cpu_set_psw() 100 uint64_t r = env->psw.mask; in s390_cpu_get_psw_mask() 118 cpu->env.psw.addr = value; in s390_cpu_set_pc() 125 return cpu->env.psw.addr; in s390_cpu_get_pc() 202 env->psw.mask &= ~PSW_MASK_RI; in s390_cpu_reset()
|
/openbmc/qemu/tests/tcg/tricore/asm/ |
H A D | macros.h | 67 mfcr DREG_CALC_PSW, $psw; \ 108 #define TEST_D_D_PSW(insn, num, result, psw, rs1) \ argument 109 TEST_CASE_PSW(num, DREG_CALC_RESULT, result, psw, \ 124 #define TEST_D_DD_PSW(insn, num, result, psw, rs1, rs2) \ argument 125 TEST_CASE_PSW(num, DREG_CALC_RESULT, result, psw, \ 132 #define TEST_D_DDD_PSW(insn, num, result, psw, rs1, rs2, rs3) \ argument 133 TEST_CASE_PSW(num, DREG_CALC_RESULT, result, psw, \ 149 #define TEST_D_DDI_PSW(insn, num, result, psw, rs1, rs2, imm) \ argument 150 TEST_CASE_PSW(num, DREG_CALC_RESULT, result, psw, \
|
/openbmc/linux/arch/sh/boards/mach-landisk/ |
H A D | psw.c | 20 struct push_switch *psw = platform_get_drvdata(pdev); in psw_irq_handler() local 28 if (psw->state) { in psw_irq_handler() 35 psw->state = 1; in psw_irq_handler() 36 mod_timer(&psw->debounce, jiffies + 50); in psw_irq_handler()
|
/openbmc/linux/arch/s390/mm/ |
H A D | extable.c | 25 regs->psw.addr = extable_fixup(ex); in ex_handler_fixup() 34 regs->psw.addr = extable_fixup(ex); in ex_handler_ua_store() 46 regs->psw.addr = extable_fixup(ex); in ex_handler_ua_load_mem() 60 regs->psw.addr = extable_fixup(ex); in ex_handler_ua_load_reg()
|