[all-commits] [llvm/llvm-project] 5e98ee: [mlir][acc] Preserve shared data operations during...

Matsu via All-commits all-commits at lists.llvm.org
Mon Jul 13 08:11:51 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5e98ee7f78dd4febc473e338e929b1646082a4cb
      https://github.com/llvm/llvm-project/commit/5e98ee7f78dd4febc473e338e929b1646082a4cb
  Author: Matsu <47756807+khaki3 at users.noreply.github.com>
  Date:   2026-07-13 (Mon, 13 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/Transforms/ACCIfClauseLowering.cpp
    M mlir/test/Dialect/OpenACC/acc-if-clause-lowering.mlir

  Log Message:
  -----------
  [mlir][acc] Preserve shared data operations during if-clause lowering (#208771)

Example:
```fortran
!$acc kernels present(grid, c) if(offload_on)
do nc = 1, grid%rc%ncol
  c(1,nc) = 0
end do
c(1,1) = 0
!$acc end kernels
```

In this code, kernels restructuring can create compute constructs that
share data-entry operations with an enclosing data region. If-clause
lowering could rewrite or erase these shared operations, producing
invalid IR or duplicate erasure.

Fix: Preserve externally owned data operations, deduplicate cleanup, and
retain duplicate operand ordering while cloning local operations once.



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