[all-commits] [llvm/llvm-project] 938a35: [Flang][OpenMP] Refactor loop-related lowering for...

Sergio Afonso via All-commits all-commits at lists.llvm.org
Mon Jul 8 04:45:09 PDT 2024


  Branch: refs/heads/users/skatrak/composite-lower-05-refactor
  Home:   https://github.com/llvm/llvm-project
  Commit: 938a35abc279a1c1b3838b1eb1de1d7e8acdd544
      https://github.com/llvm/llvm-project/commit/938a35abc279a1c1b3838b1eb1de1d7e8acdd544
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-07-08 (Mon, 08 Jul 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/parallel-reduction3.f90
    M flang/test/Lower/OpenMP/simd.f90
    M flang/test/Lower/OpenMP/wsloop-chunks.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-array-assumed-shape.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-array.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-array2.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-multiple-clauses.f90

  Log Message:
  -----------
  [Flang][OpenMP] Refactor loop-related lowering for composite support

This patch splits the lowering for `omp.loop_nest` into its own function and
updates lowering for all supported loop wrappers to stop creating this
operation themselves.

Lowering functions for loop constructs are split into "wrapper" and
"standalone" variants, where the "wrapper" version only creates the specific
operation with nothing inside of it and the "standalone" version calls the
former and also handles clause processing and creates the nested
`omp.loop_nest`.

"Wrapper" lowering functions can be used by "composite" lowering functions in
follow-up patches, minimizing code duplication.

Tests broken as a result of reordering between the processing of the loop
wrapper's and the nested `omp.loop_nest`'s clauses are also updated.



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