Lines Matching refs:MD

138         auto OrderConstantFromMetadata = [&](Metadata *MD) {  in orderModule()  argument
139 if (const auto *VAM = dyn_cast<ValueAsMetadata>(MD)) { in orderModule()
141 } else if (const auto *AL = dyn_cast<DIArgList>(MD)) { in orderModule()
272 auto PredictValueOrderFromMetadata = [&](Metadata *MD) { in predictUseListOrder() argument
273 if (const auto *VAM = dyn_cast<ValueAsMetadata>(MD)) { in predictUseListOrder()
275 } else if (const auto *AL = dyn_cast<DIArgList>(MD)) { in predictUseListOrder()
429 auto EnumerateNonLocalValuesFromMetadata = [&](Metadata *MD) { in ValueEnumerator() argument
430 assert(MD && "Metadata unexpectedly null"); in ValueEnumerator()
431 if (const auto *AL = dyn_cast<DIArgList>(MD)) { in ValueEnumerator()
439 if (!isa<LocalAsMetadata>(MD)) in ValueEnumerator()
440 EnumerateMetadata(&F, MD); in ValueEnumerator()
462 auto *MD = dyn_cast<MetadataAsValue>(&Op); in ValueEnumerator() local
463 if (!MD) { in ValueEnumerator()
468 EnumerateNonLocalValuesFromMetadata(MD->getMetadata()); in ValueEnumerator()
520 if (auto *MD = dyn_cast<MetadataAsValue>(V)) in getValueID() local
521 return getMetadataID(MD->getMetadata()); in getValueID()
569 const Metadata *MD = I.first; in print() local
572 MD->print(OS); in print()
622 void ValueEnumerator::EnumerateNamedMDNode(const NamedMDNode *MD) { in EnumerateNamedMDNode() argument
623 for (const MDNode *N : MD->operands()) in EnumerateNamedMDNode()
631 void ValueEnumerator::EnumerateMetadata(const Function *F, const Metadata *MD) { in EnumerateMetadata() argument
632 EnumerateMetadata(getMetadataFunctionID(F), MD); in EnumerateMetadata()
648 auto push = [&Worklist](MetadataMapType::value_type &MD) { in dropFunctionFromMetadata() argument
649 auto &Entry = MD.second; in dropFunctionFromMetadata()
661 if (auto *N = dyn_cast<MDNode>(MD.first)) in dropFunctionFromMetadata()
669 auto MD = MetadataMap.find(Op); in dropFunctionFromMetadata() local
670 if (MD != MetadataMap.end()) in dropFunctionFromMetadata()
671 push(*MD); in dropFunctionFromMetadata()
675 void ValueEnumerator::EnumerateMetadata(unsigned F, const Metadata *MD) { in EnumerateMetadata() argument
685 if (const MDNode *N = enumerateMetadataImpl(F, MD)) in EnumerateMetadata()
695 [&](const Metadata *MD) { return enumerateMetadataImpl(F, MD); }); in EnumerateMetadata() argument
723 const MDNode *ValueEnumerator::enumerateMetadataImpl(unsigned F, const Metadata *MD) { in enumerateMetadataImpl() argument
724 if (!MD) in enumerateMetadataImpl()
728 (isa<MDNode>(MD) || isa<MDString>(MD) || isa<ConstantAsMetadata>(MD)) && in enumerateMetadataImpl()
731 auto Insertion = MetadataMap.insert(std::make_pair(MD, MDIndex(F))); in enumerateMetadataImpl()
741 if (auto *N = dyn_cast<MDNode>(MD)) in enumerateMetadataImpl()
745 MDs.push_back(MD); in enumerateMetadataImpl()
749 if (auto *C = dyn_cast<ConstantAsMetadata>(MD)) in enumerateMetadataImpl()
808 static unsigned getMetadataTypeOrder(const Metadata *MD) { in getMetadataTypeOrder() argument
810 if (isa<MDString>(MD)) in getMetadataTypeOrder()
815 auto *N = dyn_cast<MDNode>(MD); in getMetadataTypeOrder()
835 for (const Metadata *MD : MDs) in organizeMetadata() local
836 Order.push_back(MetadataMap.lookup(MD)); in organizeMetadata()
855 auto *MD = Order[I].get(OldMDs); in organizeMetadata() local
856 MDs.push_back(MD); in organizeMetadata()
857 MetadataMap[MD].ID = I + 1; in organizeMetadata()
858 if (isa<MDString>(MD)) in organizeMetadata()
884 auto *MD = Order[I].get(OldMDs); in organizeMetadata() local
885 FunctionMDs.push_back(MD); in organizeMetadata()
886 MetadataMap[MD].ID = ++ID; in organizeMetadata()
887 if (isa<MDString>(MD)) in organizeMetadata()
1104 auto AddFnLocalMetadata = [&](Metadata *MD) { in incorporateFunction() argument
1105 if (!MD) in incorporateFunction()
1107 if (auto *Local = dyn_cast<LocalAsMetadata>(MD)) { in incorporateFunction()
1110 } else if (auto *ArgList = dyn_cast<DIArgList>(MD)) { in incorporateFunction()
1126 if (auto *MD = dyn_cast<MetadataAsValue>(&OI)) in incorporateFunction() local
1127 AddFnLocalMetadata(MD->getMetadata()); in incorporateFunction()
1163 for (const Metadata *MD : llvm::drop_begin(MDs, NumModuleMDs)) in purgeFunction() local
1164 MetadataMap.erase(MD); in purgeFunction()