promoteIf(bool b, StringRef opName, linalg::LinalgPromotionOptions options,
LinalgTransformationFilter::FilterFunction f = nullptr) {
return b ? promote(opName, options, f) : *this;
- return *this;
}
/// Append a pattern to generalize named operations.
CodegenStrategy &
generalizeIf(bool b, StringRef opName,
LinalgTransformationFilter::FilterFunction f = nullptr) {
return b ? generalize(opName, f) : *this;
- return *this;
}
/// Append a pattern to interchange iterators.
CodegenStrategy &
interchangeIf(bool b, ArrayRef<int64_t> iteratorInterchange,
LinalgTransformationFilter::FilterFunction f = nullptr) {
return b ? interchange(iteratorInterchange, f) : *this;
- return *this;
}
/// Append patterns to decompose convolutions.
CodegenStrategy &
CodegenStrategy &
decomposeIf(bool b, LinalgTransformationFilter::FilterFunction f = nullptr) {
return b ? decompose(f) : *this;
- return *this;
}
/// Append a pattern to rewrite `LinalgOpType` as a vector operation.
CodegenStrategy &
LinalgTransformationFilter::FilterFunction f = nullptr,
bool vectorizePadding = false) {
return b ? vectorize(opName, f, vectorizePadding) : *this;
- return *this;
}
/// Append a pattern to lower all vector operations.
CodegenStrategy &vectorLowering(LinalgVectorLoweringOptions options) {