Lines Matching refs:frame
66 StackFrameARM64* frame = new StackFrameARM64(); in GetContextFrame() local
70 frame->context = *context_; in GetContextFrame()
71 frame->context_validity = context_frame_validity_; in GetContextFrame()
72 frame->trust = StackFrame::FRAME_TRUST_CONTEXT; in GetContextFrame()
73 frame->instruction = frame->context.iregs[MD_CONTEXT_ARM64_REG_PC]; in GetContextFrame()
75 return frame; in GetContextFrame()
105 scoped_ptr<StackFrameARM64> frame(new StackFrameARM64()); in GetCallerByCFIFrameInfo() local
112 frame->context_validity |= StackFrameARM64::RegisterValidFlag(i); in GetCallerByCFIFrameInfo()
113 frame->context.iregs[i] = entry->second; in GetCallerByCFIFrameInfo()
121 frame->context_validity |= StackFrameARM64::RegisterValidFlag(i); in GetCallerByCFIFrameInfo()
122 frame->context.iregs[i] = last_frame->context.iregs[i]; in GetCallerByCFIFrameInfo()
126 if (!(frame->context_validity & StackFrameARM64::CONTEXT_VALID_PC)) { in GetCallerByCFIFrameInfo()
130 frame->context_validity |= StackFrameARM64::CONTEXT_VALID_PC; in GetCallerByCFIFrameInfo()
131 frame->context.iregs[MD_CONTEXT_ARM64_REG_PC] = entry->second; in GetCallerByCFIFrameInfo()
135 if (!(frame->context_validity & StackFrameARM64::CONTEXT_VALID_SP)) { in GetCallerByCFIFrameInfo()
139 frame->context_validity |= StackFrameARM64::CONTEXT_VALID_SP; in GetCallerByCFIFrameInfo()
140 frame->context.iregs[MD_CONTEXT_ARM64_REG_SP] = entry->second; in GetCallerByCFIFrameInfo()
147 if ((frame->context_validity & essentials) != essentials) in GetCallerByCFIFrameInfo()
150 frame->trust = StackFrame::FRAME_TRUST_CFI; in GetCallerByCFIFrameInfo()
151 return frame.release(); in GetCallerByCFIFrameInfo()
173 StackFrameARM64* frame = new StackFrameARM64(); in GetCallerByStackScan() local
175 frame->trust = StackFrame::FRAME_TRUST_SCAN; in GetCallerByStackScan()
176 frame->context = last_frame->context; in GetCallerByStackScan()
177 frame->context.iregs[MD_CONTEXT_ARM64_REG_PC] = caller_pc; in GetCallerByStackScan()
178 frame->context.iregs[MD_CONTEXT_ARM64_REG_SP] = caller_sp; in GetCallerByStackScan()
179 frame->context_validity = StackFrameARM64::CONTEXT_VALID_PC | in GetCallerByStackScan()
182 return frame; in GetCallerByStackScan()
210 StackFrameARM64* frame = new StackFrameARM64(); in GetCallerByFramePointer() local
212 frame->trust = StackFrame::FRAME_TRUST_FP; in GetCallerByFramePointer()
213 frame->context = last_frame->context; in GetCallerByFramePointer()
214 frame->context.iregs[MD_CONTEXT_ARM64_REG_FP] = caller_fp; in GetCallerByFramePointer()
215 frame->context.iregs[MD_CONTEXT_ARM64_REG_SP] = caller_sp; in GetCallerByFramePointer()
216 frame->context.iregs[MD_CONTEXT_ARM64_REG_PC] = in GetCallerByFramePointer()
218 frame->context.iregs[MD_CONTEXT_ARM64_REG_LR] = caller_lr; in GetCallerByFramePointer()
219 frame->context_validity = StackFrameARM64::CONTEXT_VALID_PC | in GetCallerByFramePointer()
223 return frame; in GetCallerByFramePointer()
235 scoped_ptr<StackFrameARM64> frame; in GetCallerFrame() local
241 frame.reset(GetCallerByCFIFrameInfo(frames, cfi_frame_info.get())); in GetCallerFrame()
244 if (!frame.get()) in GetCallerFrame()
245 frame.reset(GetCallerByFramePointer(frames)); in GetCallerFrame()
248 if (stack_scan_allowed && !frame.get()) in GetCallerFrame()
249 frame.reset(GetCallerByStackScan(frames)); in GetCallerFrame()
252 if (!frame.get()) in GetCallerFrame()
256 if (frame->context.iregs[MD_CONTEXT_ARM64_REG_PC] == 0) in GetCallerFrame()
262 if (frame->context.iregs[MD_CONTEXT_ARM64_REG_SP] in GetCallerFrame()
272 frame->instruction = frame->context.iregs[MD_CONTEXT_ARM64_REG_PC] - 4; in GetCallerFrame()
274 return frame.release(); in GetCallerFrame()