Lines Matching refs:regs
33 struct pt_regs *regs; in __show_trace() local
57 if (sp <= low || sp > high - sizeof(*regs)) in __show_trace()
59 regs = (struct pt_regs *) sp; in __show_trace()
60 addr = regs->psw.addr & PSW_ADDR_INSN; in __show_trace()
63 sp = regs->gprs[15]; in __show_trace()
119 static void show_last_breaking_event(struct pt_regs *regs) in show_last_breaking_event() argument
122 printk(" [<%016lx>] %pSR\n", regs->args[0], (void *)regs->args[0]); in show_last_breaking_event()
125 static inline int mask_bits(struct pt_regs *regs, unsigned long bits) in mask_bits() argument
127 return (regs->psw.mask & bits) / ((~bits + 1) & bits); in mask_bits()
130 void show_registers(struct pt_regs *regs) in show_registers() argument
134 mode = user_mode(regs) ? "User" : "Krnl"; in show_registers()
135 printk("%s PSW : %p %p", mode, (void *)regs->psw.mask, (void *)regs->psw.addr); in show_registers()
136 if (!user_mode(regs)) in show_registers()
137 printk(" (%pSR)", (void *)regs->psw.addr); in show_registers()
140 "P:%x AS:%x CC:%x PM:%x", mask_bits(regs, PSW_MASK_PER), in show_registers()
141 mask_bits(regs, PSW_MASK_DAT), mask_bits(regs, PSW_MASK_IO), in show_registers()
142 mask_bits(regs, PSW_MASK_EXT), mask_bits(regs, PSW_MASK_KEY), in show_registers()
143 mask_bits(regs, PSW_MASK_MCHECK), mask_bits(regs, PSW_MASK_WAIT), in show_registers()
144 mask_bits(regs, PSW_MASK_PSTATE), mask_bits(regs, PSW_MASK_ASC), in show_registers()
145 mask_bits(regs, PSW_MASK_CC), mask_bits(regs, PSW_MASK_PM)); in show_registers()
146 printk(" EA:%x", mask_bits(regs, PSW_MASK_EA | PSW_MASK_BA)); in show_registers()
148 regs->gprs[0], regs->gprs[1], regs->gprs[2], regs->gprs[3]); in show_registers()
150 regs->gprs[4], regs->gprs[5], regs->gprs[6], regs->gprs[7]); in show_registers()
152 regs->gprs[8], regs->gprs[9], regs->gprs[10], regs->gprs[11]); in show_registers()
154 regs->gprs[12], regs->gprs[13], regs->gprs[14], regs->gprs[15]); in show_registers()
155 show_code(regs); in show_registers()
158 void show_regs(struct pt_regs *regs) in show_regs() argument
161 show_registers(regs); in show_regs()
163 if (!user_mode(regs)) in show_regs()
164 show_trace(NULL, (unsigned long *) regs->gprs[15]); in show_regs()
165 show_last_breaking_event(regs); in show_regs()
170 void die(struct pt_regs *regs, const char *str) in die() argument
180 printk("%s: %04x ilc:%d [#%d] ", str, regs->int_code & 0xffff, in die()
181 regs->int_code >> 17, ++die_counter); in die()
192 notify_die(DIE_OOPS, str, regs, 0, regs->int_code & 0xffff, SIGSEGV); in die()
194 show_regs(regs); in die()