@@ -1248,7 +1248,7 @@ LogicalResult SimpleAffineExprFlattener::visitMulExpr(AffineBinaryOpExpr expr) {
1248
1248
localExprs, context);
1249
1249
AffineExpr b = getAffineExprFromFlatForm (rhs, numDims, numSymbols,
1250
1250
localExprs, context);
1251
- return addLocalVariableSemiAffine (a * b, mulLhs, rhs , lhs, lhs.size ());
1251
+ return addLocalVariableSemiAffine (mulLhs, rhs, a * b, lhs, lhs.size ());
1252
1252
}
1253
1253
1254
1254
// Get the RHS constant.
@@ -1301,7 +1301,7 @@ LogicalResult SimpleAffineExprFlattener::visitModExpr(AffineBinaryOpExpr expr) {
1301
1301
AffineExpr divisorExpr = getAffineExprFromFlatForm (rhs, numDims, numSymbols,
1302
1302
localExprs, context);
1303
1303
AffineExpr modExpr = dividendExpr % divisorExpr;
1304
- return addLocalVariableSemiAffine (modExpr, modLhs, rhs, lhs, lhs.size ());
1304
+ return addLocalVariableSemiAffine (modLhs, rhs, modExpr , lhs, lhs.size ());
1305
1305
}
1306
1306
1307
1307
int64_t rhsConst = rhs[getConstantIndex ()];
@@ -1386,13 +1386,13 @@ SimpleAffineExprFlattener::visitConstantExpr(AffineConstantExpr expr) {
1386
1386
}
1387
1387
1388
1388
LogicalResult SimpleAffineExprFlattener::addLocalVariableSemiAffine (
1389
- AffineExpr expr, ArrayRef<int64_t > lhs, ArrayRef<int64_t > rhs,
1389
+ ArrayRef<int64_t > lhs, ArrayRef<int64_t > rhs, AffineExpr localExpr ,
1390
1390
SmallVectorImpl<int64_t > &result, unsigned long resultSize) {
1391
1391
assert (result.size () == resultSize &&
1392
1392
" `result` vector passed is not of correct size" );
1393
1393
int loc;
1394
- if ((loc = findLocalId (expr )) == -1 ) {
1395
- if (failed (addLocalIdSemiAffine (lhs, rhs, expr )))
1394
+ if ((loc = findLocalId (localExpr )) == -1 ) {
1395
+ if (failed (addLocalIdSemiAffine (lhs, rhs, localExpr )))
1396
1396
return failure ();
1397
1397
}
1398
1398
std::fill (result.begin (), result.end (), 0 );
@@ -1435,7 +1435,7 @@ LogicalResult SimpleAffineExprFlattener::visitDivExpr(AffineBinaryOpExpr expr,
1435
1435
AffineExpr b = getAffineExprFromFlatForm (rhs, numDims, numSymbols,
1436
1436
localExprs, context);
1437
1437
AffineExpr divExpr = isCeil ? a.ceilDiv (b) : a.floorDiv (b);
1438
- return addLocalVariableSemiAffine (divExpr, divLhs, rhs, lhs, lhs.size ());
1438
+ return addLocalVariableSemiAffine (divLhs, rhs, divExpr , lhs, lhs.size ());
1439
1439
}
1440
1440
1441
1441
// This is a pure affine expr; the RHS is a positive constant.
0 commit comments