Lines Matching refs:Worklist
584 SmallVector<const MDNode *, 64> Worklist; in dropFunctionFromMetadata() local
585 auto push = [&Worklist](MetadataMapType::value_type &MD) { in dropFunctionFromMetadata()
599 Worklist.push_back(N); in dropFunctionFromMetadata()
602 while (!Worklist.empty()) in dropFunctionFromMetadata()
603 for (const Metadata *Op : Worklist.pop_back_val()->operands()) { in dropFunctionFromMetadata()
621 SmallVector<std::pair<const MDNode *, MDNode::op_iterator>, 32> Worklist; in EnumerateMetadata() local
623 Worklist.push_back(std::make_pair(N, N->op_begin())); in EnumerateMetadata()
625 while (!Worklist.empty()) { in EnumerateMetadata()
626 const MDNode *N = Worklist.back().first; in EnumerateMetadata()
631 Worklist.back().second, N->op_end(), in EnumerateMetadata()
635 Worklist.back().second = ++I; in EnumerateMetadata()
641 Worklist.push_back(std::make_pair(Op, Op->op_begin())); in EnumerateMetadata()
646 Worklist.pop_back(); in EnumerateMetadata()
652 if (Worklist.empty() || Worklist.back().first->isDistinct()) { in EnumerateMetadata()
654 Worklist.push_back(std::make_pair(N, N->op_begin())); in EnumerateMetadata()