Lines Matching refs:insn
99 u32 insn = 0; in get_user_insn() local
124 : "=r" (insn) in get_user_insn()
137 : "=r" (insn) in get_user_insn()
145 return insn; in get_user_insn()
170 unsigned long fault_addr, unsigned int insn, in do_fault_siginfo() argument
186 if (insn) in do_fault_siginfo()
187 addr = compute_effective_address(regs, insn, 0); in do_fault_siginfo()
200 static unsigned int get_fault_insn(struct pt_regs *regs, unsigned int insn) in get_fault_insn() argument
202 if (!insn) { in get_fault_insn()
206 insn = *(unsigned int *) regs->tpc; in get_fault_insn()
208 insn = get_user_insn(regs->tpc); in get_fault_insn()
211 return insn; in get_fault_insn()
215 int fault_code, unsigned int insn, in do_kernel_fault() argument
220 if ((!insn) && (regs->tstate & TSTATE_PRIV)) in do_kernel_fault()
229 (insn & 0xc0800000) == 0xc0800000) { in do_kernel_fault()
230 if (insn & 0x2000) in do_kernel_fault()
233 asi = (insn >> 5); in do_kernel_fault()
235 if (insn & 0x1000000) { in do_kernel_fault()
236 handle_ldf_stq(insn, regs); in do_kernel_fault()
242 handle_ld_nf(insn, regs); in do_kernel_fault()
262 do_fault_siginfo(si_code, SIGSEGV, regs, address, insn, fault_code); in do_kernel_fault()
287 unsigned int insn = 0; in do_sparc64_fault() local
341 insn = get_fault_insn(regs, insn); in do_sparc64_fault()
367 insn = get_fault_insn(regs, 0); in do_sparc64_fault()
368 if (!insn) in do_sparc64_fault()
374 if ((insn & 0xc0200000) == 0xc0200000 && in do_sparc64_fault()
375 (insn & 0x01780000) != 0x01680000) { in do_sparc64_fault()
391 insn = get_fault_insn(regs, insn); in do_sparc64_fault()
392 if ((insn & 0xc0800000) == 0xc0800000) { in do_sparc64_fault()
395 if (insn & 0x2000) in do_sparc64_fault()
398 asi = (insn >> 5); in do_sparc64_fault()
508 insn = get_fault_insn(regs, insn); in do_sparc64_fault()
512 do_kernel_fault(regs, si_code, fault_code, insn, address); in do_sparc64_fault()
520 insn = get_fault_insn(regs, insn); in do_sparc64_fault()
529 insn = get_fault_insn(regs, 0); in do_sparc64_fault()
533 insn = get_fault_insn(regs, insn); in do_sparc64_fault()
540 do_fault_siginfo(BUS_ADRERR, SIGBUS, regs, address, insn, fault_code); in do_sparc64_fault()