Skip to content

Commit 1d08f9c

Browse files
committed
Add OPDI_MASKED, OPDI_END_MASKED macros.
1 parent 2dd38ad commit 1d08f9c

5 files changed

Lines changed: 28 additions & 2 deletions

File tree

include/opdi/backend/macro/macros.hpp

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,11 +154,25 @@
154154
#define OPDI_END_MASTER \
155155
opdi::logic->onMasked(opdi::LogicInterface::ScopeEndpoint::End); \
156156
}
157+
158+
#define OPDI_MASKED(...) \
159+
OPDI_PRAGMA(omp masked __VA_ARGS__) \
160+
{ \
161+
opdi::logic->onMasked(opdi::LogicInterface::ScopeEndpoint::Begin);
162+
163+
#define OPDI_END_MASKED \
164+
opdi::logic->onMasked(opdi::LogicInterface::ScopeEndpoint::End); \
165+
}
157166
#else
158167
#define OPDI_MASTER(...) \
159168
OPDI_PRAGMA(omp master __VA_ARGS__) \
160169

161-
#define OPDI_END_MASTER /* empty */
170+
#define OPDI_END_MASTER
171+
172+
#define OPDI_MASKED(...) \
173+
OPDI_PRAGMA(omp masked __VA_ARGS__) \
174+
175+
#define OPDI_END_MASKED
162176
#endif
163177

164178
// standalone macros

include/opdi/backend/ompt/macros.hpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,11 @@
7878

7979
#define OPDI_END_MASTER
8080

81+
#define OPDI_MASKED(...) \
82+
OPDI_PRAGMA(omp masked __VA_ARGS__)
83+
84+
#define OPDI_END_MASKED
85+
8186
#define OPDI_BARRIER(...) \
8287
OPDI_PRAGMA(omp barrier __VA_ARGS__)
8388

include/opdi/helpers/emptyMacros.hpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,9 @@
5454
#define OPDI_MASTER(...)
5555
#define OPDI_END_MASTER
5656

57+
#define OPDI_MASKED(...)
58+
#define OPDI_END_MASKED
59+
5760
#define OPDI_BARRIER(...)
5861

5962
#define OPDI_DECLARE_REDUCTION(...)

include/opdi/helpers/undefineMacros.hpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,9 @@
5252
#undef OPDI_MASTER
5353
#undef OPDI_END_MASTER
5454

55+
#undef OPDI_MASKED
56+
#undef OPDI_END_MASKED
57+
5558
#undef OPDI_BARRIER
5659

5760
#undef OPDI_DECLARE_REDUCTION

syntax/opdi.syntax.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
"OPDI_CRITICAL_NAME": "OPDI_END_CRITICAL",
1111
"OPDI_ORDERED": "OPDI_END_ORDERED",
1212
"OPDI_SECTION": "OPDI_END_SECTION",
13-
"OPDI_MASTER": "OPDI_END_MASTER"
13+
"OPDI_MASTER": "OPDI_END_MASTER",
14+
"OPDI_MASKED": "OPDI_END_MASKED"
1415
}
1516
}

0 commit comments

Comments
 (0)