Lines Matching refs:AliasSetTracker
1 //===- llvm/Analysis/AliasSetTracker.h - Build Alias Sets -------*- C++ -*-===//
9 // This file defines two classes: AliasSetTracker and AliasSet. These interfaces
11 // of disjoint sets. Each AliasSet object constructed by the AliasSetTracker
14 // An AliasSetTracker can only be used on immutable IR.
35 class AliasSetTracker;
48 friend class AliasSetTracker;
94 void dropRef(AliasSetTracker &AST) {
111 /// AliasSetTracker object.
115 void mergeSetIn(AliasSet &AS, AliasSetTracker &AST, BatchAAResults &BatchAA);
135 // Can only be created by AliasSetTracker.
139 void removeFromTracker(AliasSetTracker &AST);
141 void addMemoryLocation(AliasSetTracker &AST, const MemoryLocation &MemLoc,
160 class AliasSetTracker {
173 explicit AliasSetTracker(BatchAAResults &AA) : AA(AA) {}
174 ~AliasSetTracker() { clear(); }
193 void add(const AliasSetTracker &AST); // Add alias relations from another AST
263 inline raw_ostream& operator<<(raw_ostream &OS, const AliasSetTracker &AST) {