[OpenACC][NFC] Refactor SemaOpenACC to use a visitor
This code was getting unwieldy, so a quick patch to refactor it a bit.
This commit is contained in:
parent
f8afa763c6
commit
e675d0d5cd
@ -867,7 +867,7 @@ public:
|
||||
case OpenACCClauseKind::CLAUSE_NAME: \
|
||||
Visit##CLAUSE_NAME##Clause(*cast<OpenACC##CLAUSE_NAME##Clause>(C)); \
|
||||
return;
|
||||
#define CLAUSE_ALIAS(ALIAS_NAME, CLAUSE_NAME) \
|
||||
#define CLAUSE_ALIAS(ALIAS_NAME, CLAUSE_NAME, DEPRECATED) \
|
||||
case OpenACCClauseKind::ALIAS_NAME: \
|
||||
Visit##CLAUSE_NAME##Clause(*cast<OpenACC##CLAUSE_NAME##Clause>(C)); \
|
||||
return;
|
||||
|
@ -15,31 +15,31 @@
|
||||
//
|
||||
// VISIT_CLAUSE(CLAUSE_NAME)
|
||||
//
|
||||
// CLAUSE_ALIAS(ALIAS_NAME, CLAUSE_NAME)
|
||||
// CLAUSE_ALIAS(ALIAS_NAME, CLAUSE_NAME, DEPRECATED)
|
||||
|
||||
#ifndef CLAUSE_ALIAS
|
||||
#define CLAUSE_ALIAS(ALIAS_NAME, CLAUSE_NAME)
|
||||
#define CLAUSE_ALIAS(ALIAS_NAME, CLAUSE_NAME, false)
|
||||
#endif
|
||||
|
||||
VISIT_CLAUSE(Auto)
|
||||
VISIT_CLAUSE(Async)
|
||||
VISIT_CLAUSE(Attach)
|
||||
VISIT_CLAUSE(Copy)
|
||||
CLAUSE_ALIAS(PCopy, Copy)
|
||||
CLAUSE_ALIAS(PresentOrCopy, Copy)
|
||||
CLAUSE_ALIAS(PCopy, Copy, true)
|
||||
CLAUSE_ALIAS(PresentOrCopy, Copy, true)
|
||||
VISIT_CLAUSE(CopyIn)
|
||||
CLAUSE_ALIAS(PCopyIn, CopyIn)
|
||||
CLAUSE_ALIAS(PresentOrCopyIn, CopyIn)
|
||||
CLAUSE_ALIAS(PCopyIn, CopyIn, true)
|
||||
CLAUSE_ALIAS(PresentOrCopyIn, CopyIn, true)
|
||||
VISIT_CLAUSE(CopyOut)
|
||||
CLAUSE_ALIAS(PCopyOut, CopyOut)
|
||||
CLAUSE_ALIAS(PresentOrCopyOut, CopyOut)
|
||||
CLAUSE_ALIAS(PCopyOut, CopyOut, true)
|
||||
CLAUSE_ALIAS(PresentOrCopyOut, CopyOut, true)
|
||||
VISIT_CLAUSE(Create)
|
||||
CLAUSE_ALIAS(PCreate, Create)
|
||||
CLAUSE_ALIAS(PresentOrCreate, Create)
|
||||
CLAUSE_ALIAS(PCreate, Create, true)
|
||||
CLAUSE_ALIAS(PresentOrCreate, Create, true)
|
||||
VISIT_CLAUSE(Default)
|
||||
VISIT_CLAUSE(DevicePtr)
|
||||
VISIT_CLAUSE(DeviceType)
|
||||
CLAUSE_ALIAS(DType, DeviceType)
|
||||
CLAUSE_ALIAS(DType, DeviceType, false)
|
||||
VISIT_CLAUSE(FirstPrivate)
|
||||
VISIT_CLAUSE(If)
|
||||
VISIT_CLAUSE(Independent)
|
||||
|
@ -104,7 +104,7 @@ OpenACCClause::child_range OpenACCClause::children() {
|
||||
#define VISIT_CLAUSE(CLAUSE_NAME) \
|
||||
case OpenACCClauseKind::CLAUSE_NAME: \
|
||||
return cast<OpenACC##CLAUSE_NAME##Clause>(this)->children();
|
||||
#define CLAUSE_ALIAS(ALIAS_NAME, CLAUSE_NAME) \
|
||||
#define CLAUSE_ALIAS(ALIAS_NAME, CLAUSE_NAME, DEPRECATED) \
|
||||
case OpenACCClauseKind::ALIAS_NAME: \
|
||||
return cast<OpenACC##CLAUSE_NAME##Clause>(this)->children();
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user