3#if !(KMP_ARCH_X86 || KMP_ARCH_X86_64 || KMP_MIC || KMP_ARCH_AARCH64 || \
4 KMP_ARCH_PPC64 || KMP_ARCH_RISCV64 || KMP_ARCH_LOONGARCH64 || \
5 KMP_ARCH_ARM || KMP_ARCH_VE || KMP_ARCH_S390X || KMP_ARCH_PPC_XCOFF || \
12typedef void (*microtask_t0)(
int *,
int *);
13typedef void (*microtask_t1)(
int *,
int *,
void *);
14typedef void (*microtask_t2)(
int *,
int *,
void *,
void *);
15typedef void (*microtask_t3)(
int *,
int *,
void *,
void *,
void *);
16typedef void (*microtask_t4)(
int *,
int *,
void *,
void *,
void *,
void *);
17typedef void (*microtask_t5)(
int *,
int *,
void *,
void *,
void *,
void *,
19typedef void (*microtask_t6)(
int *,
int *,
void *,
void *,
void *,
void *,
21typedef void (*microtask_t7)(
int *,
int *,
void *,
void *,
void *,
void *,
22 void *,
void *,
void *);
23typedef void (*microtask_t8)(
int *,
int *,
void *,
void *,
void *,
void *,
24 void *,
void *,
void *,
void *);
25typedef void (*microtask_t9)(
int *,
int *,
void *,
void *,
void *,
void *,
26 void *,
void *,
void *,
void *,
void *);
27typedef void (*microtask_t10)(
int *,
int *,
void *,
void *,
void *,
void *,
28 void *,
void *,
void *,
void *,
void *,
void *);
29typedef void (*microtask_t11)(
int *,
int *,
void *,
void *,
void *,
void *,
30 void *,
void *,
void *,
void *,
void *,
void *,
32typedef void (*microtask_t12)(
int *,
int *,
void *,
void *,
void *,
void *,
33 void *,
void *,
void *,
void *,
void *,
void *,
35typedef void (*microtask_t13)(
int *,
int *,
void *,
void *,
void *,
void *,
36 void *,
void *,
void *,
void *,
void *,
void *,
37 void *,
void *,
void *);
38typedef void (*microtask_t14)(
int *,
int *,
void *,
void *,
void *,
void *,
39 void *,
void *,
void *,
void *,
void *,
void *,
40 void *,
void *,
void *,
void *);
41typedef void (*microtask_t15)(
int *,
int *,
void *,
void *,
void *,
void *,
42 void *,
void *,
void *,
void *,
void *,
void *,
43 void *,
void *,
void *,
void *,
void *);
47int __kmp_invoke_microtask(microtask_t pkfn,
int gtid,
int tid,
int argc,
55 *exit_frame_ptr = OMPT_GET_FRAME_ADDRESS(0);
60 fprintf(stderr,
"Too many args to microtask: %d!\n", argc);
64 (*(microtask_t0)pkfn)(>id, &tid);
67 (*(microtask_t1)pkfn)(>id, &tid, p_argv[0]);
70 (*(microtask_t2)pkfn)(>id, &tid, p_argv[0], p_argv[1]);
73 (*(microtask_t3)pkfn)(>id, &tid, p_argv[0], p_argv[1], p_argv[2]);
76 (*(microtask_t4)pkfn)(>id, &tid, p_argv[0], p_argv[1], p_argv[2],
80 (*(microtask_t5)pkfn)(>id, &tid, p_argv[0], p_argv[1], p_argv[2],
81 p_argv[3], p_argv[4]);
84 (*(microtask_t6)pkfn)(>id, &tid, p_argv[0], p_argv[1], p_argv[2],
85 p_argv[3], p_argv[4], p_argv[5]);
88 (*(microtask_t7)pkfn)(>id, &tid, p_argv[0], p_argv[1], p_argv[2],
89 p_argv[3], p_argv[4], p_argv[5], p_argv[6]);
92 (*(microtask_t8)pkfn)(>id, &tid, p_argv[0], p_argv[1], p_argv[2],
93 p_argv[3], p_argv[4], p_argv[5], p_argv[6],
97 (*(microtask_t9)pkfn)(>id, &tid, p_argv[0], p_argv[1], p_argv[2],
98 p_argv[3], p_argv[4], p_argv[5], p_argv[6], p_argv[7],
102 (*(microtask_t10)pkfn)(>id, &tid, p_argv[0], p_argv[1], p_argv[2],
103 p_argv[3], p_argv[4], p_argv[5], p_argv[6],
104 p_argv[7], p_argv[8], p_argv[9]);
107 (*(microtask_t11)pkfn)(>id, &tid, p_argv[0], p_argv[1], p_argv[2],
108 p_argv[3], p_argv[4], p_argv[5], p_argv[6],
109 p_argv[7], p_argv[8], p_argv[9], p_argv[10]);
112 (*(microtask_t12)pkfn)(>id, &tid, p_argv[0], p_argv[1], p_argv[2],
113 p_argv[3], p_argv[4], p_argv[5], p_argv[6],
114 p_argv[7], p_argv[8], p_argv[9], p_argv[10],
118 (*(microtask_t13)pkfn)(>id, &tid, p_argv[0], p_argv[1], p_argv[2],
119 p_argv[3], p_argv[4], p_argv[5], p_argv[6],
120 p_argv[7], p_argv[8], p_argv[9], p_argv[10],
121 p_argv[11], p_argv[12]);
124 (*(microtask_t14)pkfn)(>id, &tid, p_argv[0], p_argv[1], p_argv[2],
125 p_argv[3], p_argv[4], p_argv[5], p_argv[6],
126 p_argv[7], p_argv[8], p_argv[9], p_argv[10],
127 p_argv[11], p_argv[12], p_argv[13]);
130 (*(microtask_t15)pkfn)(>id, &tid, p_argv[0], p_argv[1], p_argv[2],
131 p_argv[3], p_argv[4], p_argv[5], p_argv[6],
132 p_argv[7], p_argv[8], p_argv[9], p_argv[10],
133 p_argv[11], p_argv[12], p_argv[13], p_argv[14]);