ValueSetT resolve(Value value) const;
/// Removes the given values from all alias sets.
- void remove(const SmallPtrSetImpl<Value> &aliasValues);
+ void remove(const SetVector<Value> &aliasValues);
private:
/// This function constructs a mapping from values to its immediate
// Initialize the set of values that require a dedicated memory free
// operation since their operands cannot be safely deallocated in a post
// dominator.
- SmallPtrSet<Value, 8> valuesToFree;
+ SetVector<Value> valuesToFree;
llvm::SmallDenseSet<std::tuple<Value, Block *>> visitedValues;
SmallVector<std::tuple<Value, Block *>, 8> toProcess;
#include "mlir/Interfaces/ControlFlowInterfaces.h"
#include "mlir/Interfaces/ViewLikeInterface.h"
#include "llvm/ADT/SetOperations.h"
+#include "llvm/ADT/SetVector.h"
using namespace mlir;
}
/// Removes the given values from all alias sets.
-void BufferViewFlowAnalysis::remove(const SmallPtrSetImpl<Value> &aliasValues) {
+void BufferViewFlowAnalysis::remove(const SetVector<Value> &aliasValues) {
for (auto &entry : dependencies)
llvm::set_subtract(entry.second, aliasValues);
}