[PATCH] D115586: [NFC][Clang][OpenMP] Use switch-case statement to process clauses of atomic directive
Shilei Tian via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Dec 13 16:18:37 PST 2021
This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rGd762c3d905ba: [NFC][Clang][OpenMP] Use switch-case statement to process clauses of atomic… (authored by tianshilei1992).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D115586/new/
https://reviews.llvm.org/D115586
Files:
clang/lib/Sema/SemaOpenMP.cpp
Index: clang/lib/Sema/SemaOpenMP.cpp
===================================================================
--- clang/lib/Sema/SemaOpenMP.cpp
+++ clang/lib/Sema/SemaOpenMP.cpp
@@ -10934,9 +10934,11 @@
OpenMPClauseKind MemOrderKind = OMPC_unknown;
SourceLocation MemOrderLoc;
for (const OMPClause *C : Clauses) {
- if (C->getClauseKind() == OMPC_read || C->getClauseKind() == OMPC_write ||
- C->getClauseKind() == OMPC_update ||
- C->getClauseKind() == OMPC_capture) {
+ switch (C->getClauseKind()) {
+ case OMPC_read:
+ case OMPC_write:
+ case OMPC_update:
+ case OMPC_capture: {
if (AtomicKind != OMPC_unknown) {
Diag(C->getBeginLoc(), diag::err_omp_atomic_several_clauses)
<< SourceRange(C->getBeginLoc(), C->getEndLoc());
@@ -10946,12 +10948,13 @@
AtomicKind = C->getClauseKind();
AtomicKindLoc = C->getBeginLoc();
}
+ break;
}
- if (C->getClauseKind() == OMPC_seq_cst ||
- C->getClauseKind() == OMPC_acq_rel ||
- C->getClauseKind() == OMPC_acquire ||
- C->getClauseKind() == OMPC_release ||
- C->getClauseKind() == OMPC_relaxed) {
+ case OMPC_seq_cst:
+ case OMPC_acq_rel:
+ case OMPC_acquire:
+ case OMPC_release:
+ case OMPC_relaxed: {
if (MemOrderKind != OMPC_unknown) {
Diag(C->getBeginLoc(), diag::err_omp_several_mem_order_clauses)
<< getOpenMPDirectiveName(OMPD_atomic) << 0
@@ -10962,6 +10965,13 @@
MemOrderKind = C->getClauseKind();
MemOrderLoc = C->getBeginLoc();
}
+ break;
+ }
+ // The following clauses are allowed, but we don't need to do anything here.
+ case OMPC_hint:
+ break;
+ default:
+ llvm_unreachable("unknown clause is encountered");
}
}
// OpenMP 5.0, 2.17.7 atomic Construct, Restrictions
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D115586.394079.patch
Type: text/x-patch
Size: 1860 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20211214/ec398ae9/attachment.bin>
More information about the cfe-commits
mailing list