Lines Matching refs:ThreadStack
218 auto &ThreadStack = PerThreadFunctionStack[Record.TId]; in accountRecord() local
224 ThreadStack.push_back({Record.FuncId, Record.TSC}); in accountRecord()
231 if (ThreadStack.size() == 0 || ThreadStack.back().FuncId != Record.FuncId) { in accountRecord()
236 llvm::any_of(llvm::reverse(ThreadStack), [&](const FunctionAttr &A) { in accountRecord()
244 while (ThreadStack.back().FuncId != Record.FuncId) { in accountRecord()
245 TimestampT D = diff(ThreadStack.back().TSC, Record.TSC); in accountRecord()
246 VertexIdentifier TopFuncId = ThreadStack.back().FuncId; in accountRecord()
247 ThreadStack.pop_back(); in accountRecord()
248 assert(ThreadStack.size() != 0); in accountRecord()
249 EdgeIdentifier EI(ThreadStack.back().FuncId, TopFuncId); in accountRecord()
256 uint64_t D = diff(ThreadStack.back().TSC, Record.TSC); in accountRecord()
257 ThreadStack.pop_back(); in accountRecord()
258 VertexIdentifier VI = ThreadStack.empty() ? 0 : ThreadStack.back().FuncId; in accountRecord()
469 for (const auto &ThreadStack : GR.getPerThreadFunctionStack()) { in getGraphRenderer() local
470 errs() << "Thread ID: " << ThreadStack.first << "\n"; in getGraphRenderer()
471 auto Level = ThreadStack.second.size(); in getGraphRenderer()
472 for (const auto &Entry : llvm::reverse(ThreadStack.second)) in getGraphRenderer()