diff options
author | Erich Keane <ekeane@nvidia.com> | 2024-02-22 09:09:08 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-22 09:09:08 -0800 |
commit | 26cc6f126a3b25644c595b3a5a0417b1e1ab42a8 (patch) | |
tree | d36233bdc9ca8cba01d326475328bdcdf4596233 /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | 5b53fa04db33a931b843b32946065490513484bf (diff) | |
download | llvm-26cc6f126a3b25644c595b3a5a0417b1e1ab42a8.zip llvm-26cc6f126a3b25644c595b3a5a0417b1e1ab42a8.tar.gz llvm-26cc6f126a3b25644c595b3a5a0417b1e1ab42a8.tar.bz2 |
[OpenACC] Implement 'break' and 'continue' errors for Compute Cnstrcts (#82543)
OpenACC3.3 2.5.4 says: "A program may not branch into or out of a
compute construct". While some of this restriction isn't particularly
checkable, 'break' and 'continue' are possible and pretty trivial, so
this patch implements those limitations.
It IS unclear in the case of a 'break' in a 'switch' what should happen
(an antagonistic reading of the standard would prevent it from
appearing), however we're choosing to special-case the break-in-switch
to ensure that this works (albeit, a 'parallel' directive on a 'switch'
isn't particularly useful, though permitted).
Future implementations of this rule will be in a follow-up patch.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions