Lines Matching refs:insn
54 p->ainsn.insn[0] = *p->addr; in arch_prepare_kprobe()
55 flushi(&p->ainsn.insn[0]); in arch_prepare_kprobe()
57 p->ainsn.insn[1] = BREAKPOINT_INSTRUCTION_2; in arch_prepare_kprobe()
58 flushi(&p->ainsn.insn[1]); in arch_prepare_kprobe()
110 regs->tpc = (unsigned long) &p->ainsn.insn[0]; in prepare_singlestep()
111 regs->tnpc = (unsigned long) &p->ainsn.insn[1]; in prepare_singlestep()
204 static unsigned long __kprobes relbranch_fixup(u32 insn, struct kprobe *p, in relbranch_fixup() argument
216 if ((insn & 0xc0000000) == 0x40000000 || in relbranch_fixup()
217 (insn & 0xc1c00000) == 0x00400000 || in relbranch_fixup()
218 (insn & 0xc1c00000) == 0x00800000) { in relbranch_fixup()
221 ainsn_addr = (unsigned long) &p->ainsn.insn[0]; in relbranch_fixup()
239 static void __kprobes retpc_fixup(struct pt_regs *regs, u32 insn, in retpc_fixup() argument
245 if ((insn & 0xc0000000) == 0x40000000) { in retpc_fixup()
250 if ((insn & 0xc1f80000) == 0x81c00000) { in retpc_fixup()
251 unsigned long rd = ((insn >> 25) & 0x1f); in retpc_fixup()
283 u32 insn = p->ainsn.insn[0]; in resume_execution() local
285 regs->tnpc = relbranch_fixup(insn, p, regs); in resume_execution()
290 retpc_fixup(regs, insn, (unsigned long) p->addr); in resume_execution()