[all-commits] [llvm/llvm-project] 2c978f: [flang][OpenMP] Avoid boxing constant-size trivial...

Caroline Newcombe via All-commits all-commits at lists.llvm.org
Wed Jul 15 06:23:19 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2c978fa06d19095c0003508b8dac084689b12e78
      https://github.com/llvm/llvm-project/commit/2c978fa06d19095c0003508b8dac084689b12e78
  Author: Caroline Newcombe <caroline.newcombe at hpe.com>
  Date:   2026-07-15 (Wed, 15 Jul 2026)

  Changed paths:
    M flang/lib/Lower/Support/Utils.cpp
    M flang/test/Integration/OpenMP/copyprivate.f90
    M flang/test/Integration/OpenMP/private-global.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-distribute-private-adjustable-array.f90
    M flang/test/Lower/OpenMP/copyprivate.f90
    M flang/test/Lower/OpenMP/delayed-privatization-array.f90
    M flang/test/Lower/OpenMP/lastprivate-equivalence.f90
    M flang/test/Lower/OpenMP/loop-directive.f90
    M flang/test/Lower/OpenMP/parallel-private-clause.f90
    A flang/test/Lower/OpenMP/private-array-boxing.f90
    M flang/test/Lower/OpenMP/private-commonblock.f90
    M flang/test/Lower/do_concurrent_local_assoc_entity.f90

  Log Message:
  -----------
  [flang][OpenMP] Avoid boxing constant-size trivial private arrays (#208315)

Part of #208086. `privatizeSymbol` (used for both OpenMP privatization
and `do concurrent` locals) currently boxes every array as a workaround
for `fir.array` not being directly `alloca`-able in the OpenMP→LLVMIR
translation. This PR carves out the common case: a constant-shape array
of trivial intrinsic elements (e.g. `real(8) :: xx(3)`) is now
privatized unboxed, as a plain `fir.array`.



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