Lines Matching defs:frame
895 /* Unwind to previous to frame. Returns 0 if successful, negative
897 int arc_unwind(struct unwind_frame_info *frame)
899 #define FRAME_REG(r, t) (((t *)frame)[reg_info[r].offs])
902 unsigned long pc = UNW_PC(frame) - frame->call_frame;
914 UNW_PC(frame), UNW_BLINK(frame), UNW_SP(frame),
915 UNW_FP(frame));
917 if (UNW_PC(frame) == 0)
922 unsigned long *sptr = (unsigned long *)UNW_SP(frame);
1021 frame->call_frame = 1;
1034 frame->call_frame = 0;
1093 top = STACK_TOP_UNW(frame->task);
1094 bottom = STACK_BOTTOM_UNW(frame->task);
1096 if (UNW_SP(frame) < top && UNW_FP(frame) <= UNW_SP(frame)
1097 && bottom < UNW_FP(frame)
1099 if (UNW_SP(frame) > top && UNW_FP(frame) >= UNW_SP(frame)
1100 && bottom > UNW_FP(frame)
1102 && !((UNW_SP(frame) | UNW_FP(frame))
1107 (UNW_FP(frame) + FRAME_LINK_OFFSET))
1109 && link > bottom && link < UNW_FP(frame)
1111 && link > UNW_FP(frame) && link < bottom
1114 && !__get_user(UNW_PC(frame),
1115 (unsigned long *)(UNW_FP(frame)
1118 UNW_SP(frame) =
1119 UNW_FP(frame) + FRAME_RETADDR_OFFSET
1125 sizeof(UNW_PC(frame));
1126 UNW_FP(frame) = link;
1178 /* update frame */
1179 if (frame->call_frame
1181 frame->call_frame = 0;
1183 startLoc = min_t(unsigned long, UNW_SP(frame), cfa);
1184 endLoc = max_t(unsigned long, UNW_SP(frame), cfa);
1235 fptr = (unsigned long *)(&frame->regs);
1242 if (reg_info[i].width != sizeof(UNW_SP(frame))
1243 || &FRAME_REG(i, __typeof__(UNW_SP(frame)))
1244 != &UNW_SP(frame))
1246 UNW_SP(frame) = cfa;