Lines Matching full:mdnode
190 // Provide a FoldingSetTrait::Equals specialization for MDNode that can use a
192 template<> struct FoldingSetTrait<MDNode> : DefaultFoldingSetTrait<MDNode> {
193 static bool Equals(const MDNode &X, const FoldingSetNodeID &ID,
195 assert(!X.isNotUniqued() && "Non-uniqued MDNode in FoldingSet?");
205 static unsigned ComputeHash(const MDNode &X, FoldingSetNodeID &) {
222 DebugRecVH(MDNode *n, LLVMContextImpl *ctx, int idx)
225 MDNode *get() const {
226 return cast_or_null<MDNode>(getValPtr());
256 FoldingSet<MDNode> MDNodeSet;
262 SmallPtrSet<MDNode*, 1> NonUniquedMDNodes;
328 typedef std::pair<unsigned, TrackingVH<MDNode> > MDPairTy;
335 /// ScopeRecordIdx - This is the index in ScopeRecords for an MDNode scope
337 DenseMap<MDNode*, int> ScopeRecordIdx;
341 /// the MDNode is RAUW'd.
346 DenseMap<std::pair<MDNode*, MDNode*>, int> ScopeInlinedAtIdx;
358 int getOrAddScopeRecordIdxEntry(MDNode *N, int ExistingIdx);
359 int getOrAddScopeInlinedAtIdxEntry(MDNode *Scope, MDNode *IA,int ExistingIdx);