Skip to content

Commit 0f391d6

Browse files
[OpenMP] OpenMP ThreadSet clause - basic runtime (#144409)
Initial runtime support for threadset clause in task and taskloop directives [Section 14.8 in in OpenMP 6.0 spec] Frontend PR- #135807
1 parent 2d3d0e5 commit 0f391d6

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

openmp/runtime/src/kmp.h

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2725,11 +2725,12 @@ typedef struct kmp_tasking_flags { /* Total struct must be exactly 32 bits */
27252725
#if defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)
27262726
/* Same fields as in the #else branch, but in reverse order */
27272727
#if OMPX_TASKGRAPH
2728-
unsigned reserved31 : 5;
2728+
unsigned reserved31 : 4;
27292729
unsigned onced : 1;
27302730
#else
2731-
unsigned reserved31 : 6;
2731+
unsigned reserved31 : 5;
27322732
#endif
2733+
unsigned hidden_helper : 1;
27332734
unsigned target : 1;
27342735
unsigned native : 1;
27352736
unsigned freed : 1;
@@ -2741,7 +2742,7 @@ typedef struct kmp_tasking_flags { /* Total struct must be exactly 32 bits */
27412742
unsigned task_serial : 1;
27422743
unsigned tasktype : 1;
27432744
unsigned reserved : 8;
2744-
unsigned hidden_helper : 1;
2745+
unsigned free_agent_eligible : 1;
27452746
unsigned detachable : 1;
27462747
unsigned priority_specified : 1;
27472748
unsigned proxy : 1;
@@ -2762,7 +2763,8 @@ typedef struct kmp_tasking_flags { /* Total struct must be exactly 32 bits */
27622763
unsigned priority_specified : 1; /* set if the compiler provides priority
27632764
setting for the task */
27642765
unsigned detachable : 1; /* 1 == can detach */
2765-
unsigned hidden_helper : 1; /* 1 == hidden helper task */
2766+
unsigned free_agent_eligible : 1; /* set if task can be executed by a
2767+
free-agent thread */
27662768
unsigned reserved : 8; /* reserved for compiler use */
27672769

27682770
/* Library flags */ /* Total library flags must be 16 bits */
@@ -2780,11 +2782,12 @@ typedef struct kmp_tasking_flags { /* Total struct must be exactly 32 bits */
27802782
unsigned freed : 1; /* 1==freed, 0==allocated */
27812783
unsigned native : 1; /* 1==gcc-compiled task, 0==intel */
27822784
unsigned target : 1;
2785+
unsigned hidden_helper : 1; /* 1 == hidden helper task */
27832786
#if OMPX_TASKGRAPH
27842787
unsigned onced : 1; /* 1==ran once already, 0==never ran, record & replay purposes */
2785-
unsigned reserved31 : 5; /* reserved for library use */
2788+
unsigned reserved31 : 4; /* reserved for library use */
27862789
#else
2787-
unsigned reserved31 : 6; /* reserved for library use */
2790+
unsigned reserved31 : 5; /* reserved for library use */
27882791
#endif
27892792
#endif
27902793
} kmp_tasking_flags_t;

0 commit comments

Comments
 (0)