[all-commits] [llvm/llvm-project] 583ef6: [flang][mlir][OpenMP] Add linear modifier (val, re...

Chi-Chun, Chen via All-commits all-commits at lists.llvm.org
Tue Mar 24 13:46:56 PDT 2026


  Branch: refs/heads/users/cchen/openmp-linear-modifier
  Home:   https://github.com/llvm/llvm-project
  Commit: 583ef6f211bc965d62695ca67b1927dbde05088f
      https://github.com/llvm/llvm-project/commit/583ef6f211bc965d62695ca67b1927dbde05088f
  Author: Chi Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-03-24 (Tue, 24 Mar 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/composite_simd_linear.f90
    M flang/test/Lower/OpenMP/declare-simd.f90
    M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
    M flang/test/Lower/OpenMP/parallel-private-clause.f90
    M flang/test/Lower/OpenMP/simd-linear.f90
    M flang/test/Lower/OpenMP/wsloop-linear.f90
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [flang][mlir][OpenMP] Add linear modifier (val, ref, uval)

Add support for OpenMP linear modifiers `val`, `ref`, and `uval`
as defined in OpenMP 5.2 (5.4.6).


  Commit: 37ba80dc499e818aba72f68bb5973e26e57754ad
      https://github.com/llvm/llvm-project/commit/37ba80dc499e818aba72f68bb5973e26e57754ad
  Author: Chi Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-03-24 (Tue, 24 Mar 2026)

  Changed paths:
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  Add placeholder if linear modifier is not specified


  Commit: b052c7c6a7207e8d9692782fcebdf7116ebdbf42
      https://github.com/llvm/llvm-project/commit/b052c7c6a7207e8d9692782fcebdf7116ebdbf42
  Author: Chi Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-03-24 (Tue, 24 Mar 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/declare-simd.f90
    A flang/test/Lower/OpenMP/linear_modifier.f90
    M flang/test/Lower/OpenMP/parallel-private-clause.f90
    M flang/test/Lower/OpenMP/simd-linear.f90
    M flang/test/Lower/OpenMP/wsloop-linear.f90

  Log Message:
  -----------
  Add OpenMP version guard for linear modifier

- Add OpenMP 5.2 version guard for linear modifier to make sure
we don't set val for OpenMP 4.5 and 5.0 which support explicit
linear modifier
- Update test to revert changes in version < 5.2
- Update declare simd test (add declare_simd for 6.0)
- Refactor logic in flang lowering


  Commit: 88de82855bbe757cd0127dc932704ed2c6245ac2
      https://github.com/llvm/llvm-project/commit/88de82855bbe757cd0127dc932704ed2c6245ac2
  Author: Chi Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-03-24 (Tue, 24 Mar 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/composite_simd_linear.f90
    M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
    M flang/test/Lower/OpenMP/linear_modifier.f90
    M flang/test/Lower/OpenMP/wsloop-linear.f90

  Log Message:
  -----------
  Fix implicit val for OpenMP >= 52 and don't rely on static variables in processLinear

- Emit val for implicit linear clause if openmp version >= 52
- Turn `typeAttrs` and `linearModAttrs` from static to local to
avoid confusions about cleaning stale value


Compare: https://github.com/llvm/llvm-project/compare/a6bd63a72935...88de82855bbe

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