diff --git a/mlir/include/mlir/Dialect/Affine/Analysis/Utils.h b/mlir/include/mlir/Dialect/Affine/Analysis/Utils.h --- a/mlir/include/mlir/Dialect/Affine/Analysis/Utils.h +++ b/mlir/include/mlir/Dialect/Affine/Analysis/Utils.h @@ -277,13 +277,13 @@ // Constraints are added for all loop IV bounds (dim or symbol), and // constraints are added for slice bounds in 'lbs'/'ubs'. // Returns failure if we cannot add loop bounds because of unsupported cases. - LogicalResult getAsConstraints(FlatAffineValueConstraints *cst); + LogicalResult getAsConstraints(FlatAffineValueConstraints *cst) const; /// Adds to 'cst' constraints which represent the original loop bounds on /// 'ivs' in 'this'. This corresponds to the original domain of the loop nest /// from which the slice is being computed. Returns failure if we cannot add /// loop bounds because of unsupported cases. - LogicalResult getSourceAsConstraints(FlatAffineValueConstraints &cst); + LogicalResult getSourceAsConstraints(FlatAffineValueConstraints &cst) const; // Clears all bounds and operands in slice state. void clearBounds(); diff --git a/mlir/lib/Dialect/Affine/Analysis/Utils.cpp b/mlir/lib/Dialect/Affine/Analysis/Utils.cpp --- a/mlir/lib/Dialect/Affine/Analysis/Utils.cpp +++ b/mlir/lib/Dialect/Affine/Analysis/Utils.cpp @@ -533,8 +533,8 @@ // Populates 'cst' with FlatAffineValueConstraints which represent original // domain of the loop bounds that define 'ivs'. -LogicalResult -ComputationSliceState::getSourceAsConstraints(FlatAffineValueConstraints &cst) { +LogicalResult ComputationSliceState::getSourceAsConstraints( + FlatAffineValueConstraints &cst) const { assert(!ivs.empty() && "Cannot have a slice without its IVs"); cst = FlatAffineValueConstraints(/*numDims=*/ivs.size(), /*numSymbols=*/0, /*numLocals=*/0, ivs); @@ -549,7 +549,7 @@ // Populates 'cst' with FlatAffineValueConstraints which represent slice bounds. LogicalResult -ComputationSliceState::getAsConstraints(FlatAffineValueConstraints *cst) { +ComputationSliceState::getAsConstraints(FlatAffineValueConstraints *cst) const { assert(!lbOperands.empty()); // Adds src 'ivs' as dimension variables in 'cst'. unsigned numDims = ivs.size();