diff options
Diffstat (limited to 'mlir/lib/Analysis/AffineStructures.cpp')
| -rw-r--r-- | mlir/lib/Analysis/AffineStructures.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/mlir/lib/Analysis/AffineStructures.cpp b/mlir/lib/Analysis/AffineStructures.cpp index de7c5db3e07..52c15bb9237 100644 --- a/mlir/lib/Analysis/AffineStructures.cpp +++ b/mlir/lib/Analysis/AffineStructures.cpp @@ -493,6 +493,22 @@ FlatAffineConstraints::FlatAffineConstraints(IntegerSet set) } } +void FlatAffineConstraints::reset(unsigned numReservedInequalities, + unsigned numReservedEqualities, + unsigned newNumReservedCols, + unsigned newNumDims, unsigned newNumSymbols, + unsigned newNumLocals) { + assert(newNumReservedCols >= 1 && "minimum 1 column"); + numReservedCols = newNumReservedCols; + numDims = newNumDims; + numSymbols = newNumSymbols; + numIds = numDims + numSymbols + newNumLocals; + equalities.clear(); + inequalities.clear(); + equalities.reserve(newNumReservedCols * numReservedEqualities); + inequalities.reserve(newNumReservedCols * numReservedInequalities); +} + /// Adds a dimensional identifier. The added column is initialized to /// zero. void FlatAffineConstraints::addDimId(unsigned pos) { |

