Lines Matching refs:MD

413           auto *MD = dyn_cast<MetadataAsValue>(&Op);  in ValueEnumerator()  local
414 if (!MD) { in ValueEnumerator()
422 if (isa<LocalAsMetadata>(MD->getMetadata())) in ValueEnumerator()
424 if (auto *AL = dyn_cast<DIArgList>(MD->getMetadata())) { in ValueEnumerator()
431 EnumerateMetadata(&F, MD->getMetadata()); in ValueEnumerator()
483 if (auto *MD = dyn_cast<MetadataAsValue>(V)) in getValueID() local
484 return getMetadataID(MD->getMetadata()); in getValueID()
532 const Metadata *MD = I.first; in print() local
535 MD->print(OS); in print()
585 void ValueEnumerator::EnumerateNamedMDNode(const NamedMDNode *MD) { in EnumerateNamedMDNode() argument
586 for (unsigned i = 0, e = MD->getNumOperands(); i != e; ++i) in EnumerateNamedMDNode()
587 EnumerateMetadata(nullptr, MD->getOperand(i)); in EnumerateNamedMDNode()
594 void ValueEnumerator::EnumerateMetadata(const Function *F, const Metadata *MD) { in EnumerateMetadata() argument
595 EnumerateMetadata(getMetadataFunctionID(F), MD); in EnumerateMetadata()
611 auto push = [&Worklist](MetadataMapType::value_type &MD) { in dropFunctionFromMetadata() argument
612 auto &Entry = MD.second; in dropFunctionFromMetadata()
624 if (auto *N = dyn_cast<MDNode>(MD.first)) in dropFunctionFromMetadata()
632 auto MD = MetadataMap.find(Op); in dropFunctionFromMetadata() local
633 if (MD != MetadataMap.end()) in dropFunctionFromMetadata()
634 push(*MD); in dropFunctionFromMetadata()
638 void ValueEnumerator::EnumerateMetadata(unsigned F, const Metadata *MD) { in EnumerateMetadata() argument
648 if (const MDNode *N = enumerateMetadataImpl(F, MD)) in EnumerateMetadata()
658 [&](const Metadata *MD) { return enumerateMetadataImpl(F, MD); }); in EnumerateMetadata() argument
686 const MDNode *ValueEnumerator::enumerateMetadataImpl(unsigned F, const Metadata *MD) { in enumerateMetadataImpl() argument
687 if (!MD) in enumerateMetadataImpl()
691 (isa<MDNode>(MD) || isa<MDString>(MD) || isa<ConstantAsMetadata>(MD)) && in enumerateMetadataImpl()
694 auto Insertion = MetadataMap.insert(std::make_pair(MD, MDIndex(F))); in enumerateMetadataImpl()
704 if (auto *N = dyn_cast<MDNode>(MD)) in enumerateMetadataImpl()
708 MDs.push_back(MD); in enumerateMetadataImpl()
712 if (auto *C = dyn_cast<ConstantAsMetadata>(MD)) in enumerateMetadataImpl()
771 static unsigned getMetadataTypeOrder(const Metadata *MD) { in getMetadataTypeOrder() argument
773 if (isa<MDString>(MD)) in getMetadataTypeOrder()
778 auto *N = dyn_cast<MDNode>(MD); in getMetadataTypeOrder()
798 for (const Metadata *MD : MDs) in organizeMetadata() local
799 Order.push_back(MetadataMap.lookup(MD)); in organizeMetadata()
818 auto *MD = Order[I].get(OldMDs); in organizeMetadata() local
819 MDs.push_back(MD); in organizeMetadata()
820 MetadataMap[MD].ID = I + 1; in organizeMetadata()
821 if (isa<MDString>(MD)) in organizeMetadata()
847 auto *MD = Order[I].get(OldMDs); in organizeMetadata() local
848 FunctionMDs.push_back(MD); in organizeMetadata()
849 MetadataMap[MD].ID = ++ID; in organizeMetadata()
850 if (isa<MDString>(MD)) in organizeMetadata()
1071 if (auto *MD = dyn_cast<MetadataAsValue>(&OI)) { in incorporateFunction() local
1072 if (auto *Local = dyn_cast<LocalAsMetadata>(MD->getMetadata())) { in incorporateFunction()
1075 } else if (auto *ArgList = dyn_cast<DIArgList>(MD->getMetadata())) { in incorporateFunction()