[all-commits] [llvm/llvm-project] af63e1: [OpenACC][CIR] Implement 'self' lowering on comput...

Erich Keane via All-commits all-commits at lists.llvm.org
Tue Apr 15 15:52:25 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: af63e1b505453de3e6a281d1b72e62fa8d396b23
      https://github.com/llvm/llvm-project/commit/af63e1b505453de3e6a281d1b72e62fa8d396b23
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2025-04-15 (Tue, 15 Apr 2025)

  Changed paths:
    M clang/include/clang/AST/OpenACCClause.h
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/test/CIR/CodeGenOpenACC/kernels.c
    M clang/test/CIR/CodeGenOpenACC/parallel.c
    M clang/test/CIR/CodeGenOpenACC/serial.c

  Log Message:
  -----------
  [OpenACC][CIR] Implement 'self' lowering on compute constructs (#135851)

This is our first attempt at lowering a clause that is an 'operand' in
the OpenACC operand, so it does quite a bit of refactoring. My previous
plans on how to emit the clauses was not viable, so we instead do
'create the op, then use the visitor to fill in the operands'. This
resulted in the 'applyAttributes' function getting removed and a few
other functions simplified.

Additionally, it requires setting the insertion point a little to make
sure we're inserting 'around' the operation correctly.

Finally, since the OpenACC dialect only understands the MLIR types, we
had to introduce a use of the unrealized-conversion-cast, which we'll
probably getting good use out of in the future.



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