Lines Matching refs:ThreadStack
168 auto &ThreadStack = PerThreadFunctionStack[Record.TId]; in accountRecord() local
169 if (RecursiveCallsOnly && !ThreadStack.RecursionDepth) in accountRecord()
170 ThreadStack.RecursionDepth.emplace(); in accountRecord()
178 ThreadStack.Stack.emplace_back(Record.FuncId, Record.TSC); in accountRecord()
179 if (ThreadStack.RecursionDepth) in accountRecord()
180 ++(*ThreadStack.RecursionDepth)[Record.FuncId]; in accountRecord()
185 if (ThreadStack.Stack.empty()) in accountRecord()
188 if (ThreadStack.Stack.back().first == Record.FuncId) { in accountRecord()
189 const auto &Top = ThreadStack.Stack.back(); in accountRecord()
190 if (!ThreadStack.RecursionDepth || in accountRecord()
191 (*ThreadStack.RecursionDepth)[Top.first].isRecursive()) in accountRecord()
193 if (ThreadStack.RecursionDepth) in accountRecord()
194 --(*ThreadStack.RecursionDepth)[Top.first]; in accountRecord()
195 ThreadStack.Stack.pop_back(); in accountRecord()
204 std::find_if(ThreadStack.Stack.rbegin(), ThreadStack.Stack.rend(), in accountRecord()
208 if (Parent == ThreadStack.Stack.rend()) in accountRecord()
239 auto R = make_range(std::next(Parent).base(), ThreadStack.Stack.end()); in accountRecord()
241 if (!ThreadStack.RecursionDepth || in accountRecord()
242 (*ThreadStack.RecursionDepth)[E.first].isRecursive()) in accountRecord()
246 if (ThreadStack.RecursionDepth) in accountRecord()
247 --(*ThreadStack.RecursionDepth)[Top.first]; in accountRecord()
248 ThreadStack.Stack.pop_back(); in accountRecord()
492 for (const auto &ThreadStack : FCA.getPerThreadFunctionStack()) { in __anon848c509a0f02() local
493 errs() << "Thread ID: " << ThreadStack.first << "\n"; in __anon848c509a0f02()
494 if (ThreadStack.second.Stack.empty()) { in __anon848c509a0f02()
498 auto Level = ThreadStack.second.Stack.size(); in __anon848c509a0f02()
499 for (const auto &Entry : llvm::reverse(ThreadStack.second.Stack)) in __anon848c509a0f02()