Lines Matching refs:pc

77 static unsigned long *find_frame_creation(unsigned long *pc)  in find_frame_creation()  argument
86 for (i = 0; i < 1000; i++, pc--) { in find_frame_creation()
90 if (!kernel_text_address((unsigned long) pc)) in find_frame_creation()
93 instr = *pc; in find_frame_creation()
102 frame_size, pc); in find_frame_creation()
106 pr_debug(" Found frame creation at 0x%p, size %d\n", pc, in find_frame_creation()
108 return pc; in find_frame_creation()
125 static int lookup_prev_stack_frame(unsigned long fp, unsigned long pc, in lookup_prev_stack_frame() argument
133 if (pc != (unsigned long) &_switch_to) in lookup_prev_stack_frame()
134 prologue = find_frame_creation((unsigned long *)pc); in lookup_prev_stack_frame()
155 unsigned long pc, unsigned long fp,
164 static inline void unwind_trap(struct task_struct *task, unsigned long pc, in unwind_trap() argument
183 unsigned long pc, unsigned long fp, in microblaze_unwind_inner() argument
190 pr_debug(" Unwinding with PC=%p, FP=%p\n", (void *)pc, (void *)fp); in microblaze_unwind_inner()
191 if (!pc || !fp || (pc & 3) || (fp & 3)) { in microblaze_unwind_inner()
195 for (; pc != 0;) { in microblaze_unwind_inner()
197 unsigned long return_to = pc + 2 * sizeof(unsigned long); in microblaze_unwind_inner()
218 unwind_trap(task, pc, fp, trace, loglvl); in microblaze_unwind_inner()
222 pc -= ofs; in microblaze_unwind_inner()
229 trace->entries[trace->nr_entries++] = pc; in microblaze_unwind_inner()
236 if (unlikely(pc == task_pt_regs(task)->pc)) { in microblaze_unwind_inner()
238 loglvl, (void *) pc, in microblaze_unwind_inner()
243 print_ip_sym(loglvl, pc); in microblaze_unwind_inner()
247 if (!kernel_text_address(pc)) in microblaze_unwind_inner()
250 if (lookup_prev_stack_frame(fp, pc, leaf_return, &next_fp, in microblaze_unwind_inner()
253 pc = next_pc & ~3; in microblaze_unwind_inner()
279 microblaze_unwind_inner(task, regs->pc, regs->r1, in microblaze_unwind()
294 unsigned long pc, fp; in microblaze_unwind() local
302 : "=r" (pc) in microblaze_unwind()
306 microblaze_unwind_inner(current, pc, fp, 0, trace, loglvl); in microblaze_unwind()