Lines Matching full:stack
5 #include "src/heap/base/stack.h"
17 using IterateStackCallback = void (*)(const Stack*, StackVisitor*, intptr_t*);
18 extern "C" void PushAllRegistersAndIterateStack(const Stack*, StackVisitor*,
21 Stack::Stack(const void* stack_start) : stack_start_(stack_start) {} in Stack() function in heap::base::Stack
23 void Stack::SetStackStart(const void* stack_start) { in SetStackStart()
27 bool Stack::IsOnStack(void* slot) const { in IsOnStack()
30 // If the slot is part of a fake frame, then it is definitely on the stack. in IsOnStack()
36 // Fall through as there is still a regular stack present even when running in IsOnStack()
47 return v8::base::Stack::GetCurrentStackPosition() <= slot && in IsOnStack()
56 // "stack-use-after-scope" warnings.
58 // No TSAN support as the stack may not be exclusively owned by the current
66 // When using ASAN fake stack a pointer to the fake frame is kept on the in IterateAsanFakeFrameIfNecessary()
67 // native frame. In case |addr| points to a fake frame of the current stack in IterateAsanFakeFrameIfNecessary()
77 // of this stack. in IterateAsanFakeFrameIfNecessary()
116 // Called by the trampoline that pushes registers on the stack. This method
120 // No ASAN support as method accesses redzones while walking the stack.
122 // No TSAN support as the stack may not be exclusively owned by the current
126 void IteratePointersImpl(const Stack* stack, StackVisitor* visitor, in IteratePointersImpl() argument
131 // All supported platforms should have their stack aligned to at least in IteratePointersImpl()
136 for (; current < stack->stack_start(); ++current) { in IteratePointersImpl()
137 // MSAN: Instead of unpoisoning the whole stack, the slot's value is copied in IteratePointersImpl()
145 stack->stack_start(), stack_end, address); in IteratePointersImpl()
152 void Stack::IteratePointers(StackVisitor* visitor) const { in IteratePointers()
156 // the regular conservative stack iteration. in IteratePointers()
161 void Stack::IteratePointersUnsafe(StackVisitor* visitor, in IteratePointersUnsafe()
166 const void* Stack::GetCurrentStackPointerForLocalVariables() { in GetCurrentStackPointerForLocalVariables()
171 return v8::base::Stack::GetCurrentStackPosition(); in GetCurrentStackPointerForLocalVariables()
174 return v8::base::Stack::GetCurrentStackPosition(); in GetCurrentStackPointerForLocalVariables()