[all-commits] [llvm/llvm-project] 78ab38: [OpenACC][CIR] Implement 'gang' lowering on `routi...
Erich Keane via All-commits
all-commits at lists.llvm.org
Thu Dec 4 11:04:41 PST 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 78ab38996d3fe0caef155d469f53c30420b39e3b
https://github.com/llvm/llvm-project/commit/78ab38996d3fe0caef155d469f53c30420b39e3b
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-12-04 (Thu, 04 Dec 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
M clang/test/CIR/CodeGenOpenACC/routine-clauses.cpp
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
Log Message:
-----------
[OpenACC][CIR] Implement 'gang' lowering on `routine' (#170506)
This is a bit more work than the worker/vector/seq in that gang takes an
optional `dim` argument. The argument is always 1, 2, or 3 (constants!),
and the other argument-types that gang allows elsewhere aren't valid
here.
For the IR, we had to add 2 overloads of `addGang`. The first just adds
the 'valueless' one, which can just add to the one ArrayAttr. The second
has to add to TWO lists.
Note: The standard limits to only 1 `gang` per construct. We decided
after evaluating it, that it really means 'per device-type region'.
However, device_type isn't implemented yet, so we'll add tests for that
when we do.
At the moment, we added the device_type infrastructure however.
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