Lines Matching defs:StackTrieNode
180 using StackTrieNode = TrieNode<StackIdData>;
185 SmallVector<StackTrieNode *, 4>
186 findSiblings(StackTrieNode *parent, int32_t FnId, uint32_t TId,
187 const DenseMap<uint32_t, SmallVector<StackTrieNode *, 4>>
190 SmallVector<StackTrieNode *, 4> Siblings{};
216 StackTrieNode *findOrCreateStackNode(
217 StackTrieNode *Parent, int32_t FuncId, uint32_t TId,
218 DenseMap<uint32_t, SmallVector<StackTrieNode *, 4>> &StackRootsByThreadId,
219 DenseMap<unsigned, StackTrieNode *> &StacksByStackId, unsigned *id_counter,
220 std::forward_list<StackTrieNode> &NodeStore) {
221 SmallVector<StackTrieNode *, 4> &ParentCallees =
223 auto match = find_if(ParentCallees, [FuncId](StackTrieNode *ParentCallee) {
229 SmallVector<StackTrieNode *, 4> siblings =
233 StackTrieNode *CurrentStack = &NodeStore.front();
240 StackTrieNode *CurrentStack = &NodeStore.front();
251 const StackTrieNode &StackCursor,
284 DenseMap<uint32_t, StackTrieNode *> StackCursorByThreadId{};
285 DenseMap<uint32_t, SmallVector<StackTrieNode *, 4>> StackRootsByThreadId{};
286 DenseMap<unsigned, StackTrieNode *> StacksByStackId{};
287 std::forward_list<StackTrieNode> NodeStore{};
298 StackTrieNode *&StackCursor = StackCursorByThreadId[R.TId];
326 StackTrieNode *PreviousCursor = nullptr;