[llvm-branch-commits] [mlir] [mlir-c] Add 1:N TypeConverter conversion and materialization bindings (PR #208935)
Jacques Pienaar via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Tue Jul 21 01:50:31 PDT 2026
================
@@ -543,6 +543,22 @@ MlirLogicalResult mlirConversionPatternRewriterConvertRegionTypes(
*unwrap(typeConverter)));
}
+void mlirConversionPatternRewriterReplaceOpWithMultiple(
+ MlirConversionPatternRewriter rewriter, MlirOperation op, intptr_t nRanges,
+ intptr_t *rangeSizes, MlirValue *values) {
+ SmallVector<SmallVector<Value>> ranges;
+ ranges.reserve(nRanges);
+ MlirValue *cur = values;
+ for (intptr_t i = 0; i < nRanges; ++i) {
+ SmallVector<Value> range;
+ range.reserve(rangeSizes[i]);
+ for (intptr_t j = 0; j < rangeSizes[i]; ++j, ++cur)
----------------
jpienaar wrote:
Avoid calculating the end size unless rangeSizes change (https://llvm.org/docs/CodingStandards.html#don-t-evaluate-end-every-time-through-a-loop)
https://github.com/llvm/llvm-project/pull/208935
More information about the llvm-branch-commits
mailing list