[all-commits] [llvm/llvm-project] e737b8: [flang][OpenMP] Translate OpenMP scopes when compi...

Kareem Ergawy via All-commits all-commits at lists.llvm.org
Wed Mar 19 00:26:41 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e737b846b4a34940b626c2a1119779caaa430460
      https://github.com/llvm/llvm-project/commit/e737b846b4a34940b626c2a1119779caaa430460
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-target-nesting-in-host-ops.mlir

  Log Message:
  -----------
  [flang][OpenMP] Translate OpenMP scopes when compiling for target device (#130078)

If a `target` directive is nested in a host OpenMP directive (e.g.
parallel, task, or a worksharing loop), flang currently crashes if the
target directive-related MLIR ops (e.g. `omp.map.bounds` and
`omp.map.info` depends on SSA values defined inside the parent host
OpenMP directives/ops.

This PR tries to solve this problem by treating these parent OpenMP ops
as "SSA scopes". Whenever we are translating for the device, instead of
completely translating host ops, we just tranlate their MLIR ops as pure
SSA values.



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