[all-commits] [llvm/llvm-project] 78f2be: [mlir][scf] Add unsignedCmp to scf.parallel and us...

Samarth Narang via All-commits all-commits at lists.llvm.org
Mon Sep 28 17:35:31 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 78f2beb7655e19b3f5a8c55dda3f7b8b20771bed
      https://github.com/llvm/llvm-project/commit/78f2beb7655e19b3f5a8c55dda3f7b8b20771bed
  Author: Samarth Narang <70980689+snarang181 at users.noreply.github.com>
  Date:   2026-09-28 (Mon, 28 Sep 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
    M mlir/lib/Conversion/SCFToControlFlow/SCFToControlFlow.cpp
    M mlir/lib/Conversion/SCFToGPU/SCFToGPU.cpp
    M mlir/lib/Conversion/SCFToOpenMP/SCFToOpenMP.cpp
    M mlir/lib/Dialect/Async/Transforms/AsyncParallelFor.cpp
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Dialect/SCF/Transforms/ParallelForToNestedFors.cpp
    M mlir/lib/Dialect/SCF/Transforms/ParallelLoopCollapsing.cpp
    M mlir/lib/Dialect/SCF/Transforms/ParallelLoopFusion.cpp
    M mlir/lib/Dialect/SCF/Transforms/ParallelLoopTiling.cpp
    M mlir/test/Conversion/SCFToControlFlow/convert-to-cfg.mlir
    M mlir/test/Conversion/SCFToGPU/parallel_loop.mlir
    A mlir/test/Conversion/SCFToOpenMP/scf-to-openmp-unsigned.mlir
    M mlir/test/Dialect/Async/async-parallel-for-async-dispatch.mlir
    M mlir/test/Dialect/SCF/ops.mlir
    M mlir/test/Dialect/SCF/parallel-loop-fusion.mlir
    M mlir/test/Dialect/SCF/parallel-loop-tiling-inbound-check.mlir
    M mlir/test/Dialect/SCF/parallel-to-nested-fors.mlir
    A mlir/test/Transforms/parallel-loop-collapsing-unsigned.mlir

  Log Message:
  -----------
  [mlir][scf] Add unsignedCmp to scf.parallel and use it in the tiling in-bound check (#226130)

This change mirrors `scf.for` where `scf.parallel` gets an `unsignedCmp`
unit attribute, and every pass that rebuilds or lowers a `scf.parallel`
has to respect it:

- Propagate where a loop is rebuilt from another, such as parallel loop
tiling, parallel loop fusion (which also refuses to fuse loops of
different signedness), parallel-to-nested-fors and SCF-to-CF lowering.
- Decline where the bound arithmetic assumes signed values, such as
SCF-to-GPU, SCF-to-OpenMP, async-parallel-for and the
parallel-loop-collapsing test pass.

Fixes #223233



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list