9 #ifndef MLIR_DIALECT_BUFFERIZATION_TRANSFORMS_BUFFERVIEWFLOWANALYSIS_H
10 #define MLIR_DIALECT_BUFFERIZATION_TRANSFORMS_BUFFERVIEWFLOWANALYSIS_H
13 #include "llvm/ADT/SmallPtrSet.h"
33 return dependencies.find(value);
37 ValueMapT::const_iterator
begin()
const {
return dependencies.begin(); }
40 ValueMapT::const_iterator
end()
const {
return dependencies.end(); }
A straight-forward alias analysis which ensures that all dependencies of all values will be determine...
ValueMapT::const_iterator end() const
Returns the end iterator that can be used in combination with find.
SmallPtrSet< Value, 16 > ValueSetT
BufferViewFlowAnalysis(Operation *op)
Constructs a new alias analysis using the op provided.
ValueMapT::const_iterator begin() const
Returns the begin iterator to iterate over all dependencies.
void remove(const SetVector< Value > &aliasValues)
Removes the given values from all alias sets.
ValueSetT resolve(Value value) const
Find all immediate and indirect views upon this value.
llvm::DenseMap< Value, ValueSetT > ValueMapT
void rename(Value from, Value to)
Replaces all occurrences of 'from' in the internal datastructures with 'to'.
ValueMapT::const_iterator find(Value value) const
Find all immediate dependencies this value could potentially have.
Operation is the basic unit of execution within MLIR.
This class represents an instance of an SSA value in the MLIR system, representing a computable value...
This header declares functions that assist transformations in the MemRef dialect.