diff options
author | Erich Keane <ekeane@nvidia.com> | 2025-06-11 12:04:26 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-06-11 12:04:26 -0700 |
commit | 574f77a1ee34461bc1f4a0823da6c960ff1c9655 (patch) | |
tree | bc9a2542d6dca786d063426b3e1883e6015ecc1e /llvm/lib/Support/MemoryBuffer.cpp | |
parent | 02b6849cf1feb425885bf6f5ee505d5cd4a824d7 (diff) | |
download | llvm-574f77a1ee34461bc1f4a0823da6c960ff1c9655.zip llvm-574f77a1ee34461bc1f4a0823da6c960ff1c9655.tar.gz llvm-574f77a1ee34461bc1f4a0823da6c960ff1c9655.tar.bz2 |
[OpenACC][CIR] Add parallelism determ. to all acc.loops (#143751)
PR #143720 adds a requirement to the ACC dialect that every acc.loop
must have a seq, independent, or auto attribute for the 'default'
device_type. The standard has rules for how this can be intuited:
orphan/parallel/parallel loop: independent
kernels/kernels loop: auto
serial/serial loop: seq, unless there is a gang/worker/vector, at which
point it should be 'auto'.
This patch implements all of this rule as a 'cleanup' step on the IR
generation for combined/loop operations. Note that the test impact is
much less since I inadvertently have my 'operation' terminating curley
matching the end curley from 'attribute' instead of the front of the
line, so I've added sufficient tests to ensure I captured the above.
Diffstat (limited to 'llvm/lib/Support/MemoryBuffer.cpp')
0 files changed, 0 insertions, 0 deletions