[all-commits] [llvm/llvm-project] 82509a: [OpenMP][CodeGen] Improved codegen for combined lo...

David Pagan via All-commits all-commits at lists.llvm.org
Wed Mar 27 13:26:58 PDT 2024


  Branch: refs/remotes/myfork/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 82509a768d03d18051b2ff05e6e924011d443662
      https://github.com/llvm/llvm-project/commit/82509a768d03d18051b2ff05e6e924011d443662
  Author: Dave Pagan <dave.pagan at amd.com>
  Date:   2024-03-19 (Tue, 19 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/test/OpenMP/nvptx_target_teams_generic_loop_codegen.cpp
    M clang/test/OpenMP/nvptx_target_teams_generic_loop_generic_mode_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
    A clang/test/OpenMP/target_teams_generic_loop_codegen_as_distribute.cpp
    A clang/test/OpenMP/target_teams_generic_loop_codegen_as_parallel_for.cpp
    M clang/test/OpenMP/target_teams_generic_loop_if_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
    M clang/test/OpenMP/teams_generic_loop_codegen-1.cpp
    M clang/test/OpenMP/teams_generic_loop_codegen.cpp
    M clang/test/OpenMP/teams_generic_loop_collapse_codegen.cpp
    M clang/test/OpenMP/teams_generic_loop_private_codegen.cpp
    M clang/test/OpenMP/teams_generic_loop_reduction_codegen.cpp

  Log Message:
  -----------
  [OpenMP][CodeGen] Improved codegen for combined loop directives

IR for 'target teams loop' is now dependent on suitability of
associated loop-nest.

If a loop-nest:
  - does not contain a function call, or
  - the -fopenmp-assume-no-nested-parallelism has been specified,
  - or the call is to an OpenMP API
AND
  - does not contain nested loop bind(parallel) directives

then it can be emitted as 'target teams distribute parallel for', which
is the current default. Otherwise, it is emitted as
'target teams distribute'.

Added debug output indicating how 'target teams loop' was emitted. Flag
is -mllvm -debug-only=target-teams-loop-codegen

Added LIT tests explicitly verifying 'target teams loop' emitted as
a parallel loop and a distribute loop.

Updated other 'loop' related tests as needed to reflect change in IR.


  Commit: 58974446a929701a64e952b01dab32d773f34ae1
      https://github.com/llvm/llvm-project/commit/58974446a929701a64e952b01dab32d773f34ae1
  Author: Dave Pagan <dave.pagan at amd.com>
  Date:   2024-03-19 (Tue, 19 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp

  Log Message:
  -----------
  Fix formatting issues found by code formatting check.


  Commit: a000a8f748e8f693aefc88e46c89da194a2a6061
      https://github.com/llvm/llvm-project/commit/a000a8f748e8f693aefc88e46c89da194a2a6061
  Author: Dave Pagan <dave.pagan at amd.com>
  Date:   2024-03-19 (Tue, 19 Mar 2024)

  Changed paths:
    M clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp

  Log Message:
  -----------
  A few minor LIT test CHECK updates (auto-generated).


  Commit: bb118c4435b1b26d5d14188d6342e3b7356ba282
      https://github.com/llvm/llvm-project/commit/bb118c4435b1b26d5d14188d6342e3b7356ba282
  Author: Dave Pagan <dave.pagan at amd.com>
  Date:   2024-03-19 (Tue, 19 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp

  Log Message:
  -----------
  Compile debug output for 'teams loop' codegen type under NDEBUG.


  Commit: 85c9855fbab9a99056fc47ee05657aa3242e1829
      https://github.com/llvm/llvm-project/commit/85c9855fbab9a99056fc47ee05657aa3242e1829
  Author: Dave Pagan <dave.pagan at amd.com>
  Date:   2024-03-19 (Tue, 19 Mar 2024)

  Changed paths:
    M clang/include/clang/AST/StmtOpenMP.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/StmtOpenMP.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp

  Log Message:
  -----------
  Moved check for whether a 'target teams loop' construct can potentially
be considered equivalent to 'target teams distribute parallel for' from
CodeGen to Sema.


  Commit: 2ec4fd7a4fc6de0e0b9fc4dd9960806594faf33a
      https://github.com/llvm/llvm-project/commit/2ec4fd7a4fc6de0e0b9fc4dd9960806594faf33a
  Author: Dave Pagan <dave.pagan at amd.com>
  Date:   2024-03-19 (Tue, 19 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/Sema/SemaOpenMP.cpp

  Log Message:
  -----------
  Fix formatting issues found by code formatting check in build.


Compare: https://github.com/llvm/llvm-project/compare/82509a768d03%5E...2ec4fd7a4fc6

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