Import GCC-8 to a new vendor branch
[dragonfly.git] / contrib / gcc-8.0 / gcc / omp-builtins.def
1 /* This file contains the definitions and documentation for the
2    Offloading and Multi Processing builtins used in the GNU compiler.
3    Copyright (C) 2005-2018 Free Software Foundation, Inc.
4
5 This file is part of GCC.
6
7 GCC is free software; you can redistribute it and/or modify it under
8 the terms of the GNU General Public License as published by the Free
9 Software Foundation; either version 3, or (at your option) any later
10 version.
11
12 GCC is distributed in the hope that it will be useful, but WITHOUT ANY
13 WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
15 for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with GCC; see the file COPYING3.  If not see
19 <http://www.gnu.org/licenses/>.  */
20
21 /* Before including this file, you should define a macro:
22
23      DEF_GOACC_BUILTIN (ENUM, NAME, TYPE, ATTRS)
24      DEF_GOACC_BUILTIN_COMPILER (ENUM, NAME, TYPE, ATTRS)
25      DEF_GOMP_BUILTIN (ENUM, NAME, TYPE, ATTRS)
26
27    See builtins.def for details.  */
28
29 /* The reason why they aren't in gcc/builtins.def is that the Fortran front end
30    doesn't source those.  */
31
32 DEF_GOACC_BUILTIN (BUILT_IN_ACC_GET_DEVICE_TYPE, "acc_get_device_type",
33                    BT_FN_INT, ATTR_NOTHROW_LIST)
34 DEF_GOACC_BUILTIN (BUILT_IN_GOACC_DATA_START, "GOACC_data_start",
35                    BT_FN_VOID_INT_SIZE_PTR_PTR_PTR, ATTR_NOTHROW_LIST)
36 DEF_GOACC_BUILTIN (BUILT_IN_GOACC_DATA_END, "GOACC_data_end",
37                    BT_FN_VOID, ATTR_NOTHROW_LIST)
38 DEF_GOACC_BUILTIN (BUILT_IN_GOACC_ENTER_EXIT_DATA, "GOACC_enter_exit_data",
39                    BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_INT_INT_VAR,
40                    ATTR_NOTHROW_LIST)
41 DEF_GOACC_BUILTIN (BUILT_IN_GOACC_PARALLEL, "GOACC_parallel_keyed",
42                    BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_VAR,
43                    ATTR_NOTHROW_LIST)
44 DEF_GOACC_BUILTIN (BUILT_IN_GOACC_UPDATE, "GOACC_update",
45                    BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_INT_INT_VAR,
46                    ATTR_NOTHROW_LIST)
47 DEF_GOACC_BUILTIN (BUILT_IN_GOACC_WAIT, "GOACC_wait",
48                    BT_FN_VOID_INT_INT_VAR,
49                    ATTR_NOTHROW_LIST)
50
51 DEF_GOACC_BUILTIN_COMPILER (BUILT_IN_ACC_ON_DEVICE, "acc_on_device",
52                             BT_FN_INT_INT, ATTR_CONST_NOTHROW_LEAF_LIST)
53
54 DEF_GOMP_BUILTIN (BUILT_IN_OMP_GET_THREAD_NUM, "omp_get_thread_num",
55                   BT_FN_INT, ATTR_CONST_NOTHROW_LEAF_LIST)
56 DEF_GOMP_BUILTIN (BUILT_IN_OMP_GET_NUM_THREADS, "omp_get_num_threads",
57                   BT_FN_INT, ATTR_CONST_NOTHROW_LEAF_LIST)
58 DEF_GOMP_BUILTIN (BUILT_IN_OMP_GET_TEAM_NUM, "omp_get_team_num",
59                   BT_FN_INT, ATTR_CONST_NOTHROW_LEAF_LIST)
60 DEF_GOMP_BUILTIN (BUILT_IN_OMP_GET_NUM_TEAMS, "omp_get_num_teams",
61                   BT_FN_INT, ATTR_CONST_NOTHROW_LEAF_LIST)
62
63 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ATOMIC_START, "GOMP_atomic_start",
64                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
65 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ATOMIC_END, "GOMP_atomic_end",
66                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
67 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_BARRIER, "GOMP_barrier",
68                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
69 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_BARRIER_CANCEL, "GOMP_barrier_cancel",
70                   BT_FN_BOOL, ATTR_NOTHROW_LEAF_LIST)
71 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TASKWAIT, "GOMP_taskwait",
72                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
73 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TASKYIELD, "GOMP_taskyield",
74                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
75 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TASKGROUP_START, "GOMP_taskgroup_start",
76                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
77 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TASKGROUP_END, "GOMP_taskgroup_end",
78                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
79 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CANCEL, "GOMP_cancel",
80                   BT_FN_BOOL_INT_BOOL, ATTR_NOTHROW_LEAF_LIST)
81 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CANCELLATION_POINT, "GOMP_cancellation_point",
82                   BT_FN_BOOL_INT, ATTR_NOTHROW_LEAF_LIST)
83 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CRITICAL_START, "GOMP_critical_start",
84                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
85 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CRITICAL_END, "GOMP_critical_end",
86                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
87 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CRITICAL_NAME_START,
88                   "GOMP_critical_name_start",
89                   BT_FN_VOID_PTRPTR, ATTR_NOTHROW_LEAF_LIST)
90 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CRITICAL_NAME_END,
91                   "GOMP_critical_name_end",
92                   BT_FN_VOID_PTRPTR, ATTR_NOTHROW_LEAF_LIST)
93 /* NOTE: Do not change the order of BUILT_IN_GOMP_LOOP_*_START.  They
94    are used in index arithmetic with enum omp_clause_schedule_kind
95    in omp-low.c.  */
96 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_STATIC_START,
97                   "GOMP_loop_static_start",
98                   BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR,
99                   ATTR_NOTHROW_LEAF_LIST)
100 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_DYNAMIC_START,
101                   "GOMP_loop_dynamic_start",
102                   BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR,
103                   ATTR_NOTHROW_LEAF_LIST)
104 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_GUIDED_START,
105                   "GOMP_loop_guided_start",
106                   BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR,
107                   ATTR_NOTHROW_LEAF_LIST)
108 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_RUNTIME_START,
109                   "GOMP_loop_runtime_start",
110                   BT_FN_BOOL_LONG_LONG_LONG_LONGPTR_LONGPTR,
111                   ATTR_NOTHROW_LEAF_LIST)
112 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_NONMONOTONIC_DYNAMIC_START,
113                   "GOMP_loop_nonmonotonic_dynamic_start",
114                   BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR,
115                   ATTR_NOTHROW_LEAF_LIST)
116 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_NONMONOTONIC_GUIDED_START,
117                   "GOMP_loop_nonmonotonic_guided_start",
118                   BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR,
119                   ATTR_NOTHROW_LEAF_LIST)
120 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_STATIC_START,
121                   "GOMP_loop_ordered_static_start",
122                   BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR,
123                   ATTR_NOTHROW_LEAF_LIST)
124 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_DYNAMIC_START,
125                   "GOMP_loop_ordered_dynamic_start",
126                   BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR,
127                   ATTR_NOTHROW_LEAF_LIST)
128 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_GUIDED_START,
129                   "GOMP_loop_ordered_guided_start",
130                   BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR,
131                   ATTR_NOTHROW_LEAF_LIST)
132 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_RUNTIME_START,
133                   "GOMP_loop_ordered_runtime_start",
134                   BT_FN_BOOL_LONG_LONG_LONG_LONGPTR_LONGPTR,
135                   ATTR_NOTHROW_LEAF_LIST)
136 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_DOACROSS_STATIC_START,
137                   "GOMP_loop_doacross_static_start",
138                   BT_FN_BOOL_UINT_LONGPTR_LONG_LONGPTR_LONGPTR,
139                   ATTR_NOTHROW_LEAF_LIST)
140 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_DOACROSS_DYNAMIC_START,
141                   "GOMP_loop_doacross_dynamic_start",
142                   BT_FN_BOOL_UINT_LONGPTR_LONG_LONGPTR_LONGPTR,
143                   ATTR_NOTHROW_LEAF_LIST)
144 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_DOACROSS_GUIDED_START,
145                   "GOMP_loop_doacross_guided_start",
146                   BT_FN_BOOL_UINT_LONGPTR_LONG_LONGPTR_LONGPTR,
147                   ATTR_NOTHROW_LEAF_LIST)
148 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_DOACROSS_RUNTIME_START,
149                   "GOMP_loop_doacross_runtime_start",
150                   BT_FN_BOOL_UINT_LONGPTR_LONGPTR_LONGPTR,
151                   ATTR_NOTHROW_LEAF_LIST)
152 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_STATIC_NEXT, "GOMP_loop_static_next",
153                   BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
154 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_DYNAMIC_NEXT, "GOMP_loop_dynamic_next",
155                   BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
156 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_GUIDED_NEXT, "GOMP_loop_guided_next",
157                   BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
158 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_RUNTIME_NEXT, "GOMP_loop_runtime_next",
159                   BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
160 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_NONMONOTONIC_DYNAMIC_NEXT,
161                   "GOMP_loop_nonmonotonic_dynamic_next",
162                   BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
163 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_NONMONOTONIC_GUIDED_NEXT,
164                   "GOMP_loop_nonmonotonic_guided_next",
165                   BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
166 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_STATIC_NEXT,
167                   "GOMP_loop_ordered_static_next",
168                   BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
169 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_DYNAMIC_NEXT,
170                   "GOMP_loop_ordered_dynamic_next",
171                   BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
172 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_GUIDED_NEXT,
173                   "GOMP_loop_ordered_guided_next",
174                   BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
175 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ORDERED_RUNTIME_NEXT,
176                   "GOMP_loop_ordered_runtime_next",
177                   BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
178 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_STATIC_START,
179                   "GOMP_loop_ull_static_start",
180                   BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR,
181                   ATTR_NOTHROW_LEAF_LIST)
182 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_DYNAMIC_START,
183                   "GOMP_loop_ull_dynamic_start",
184                   BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR,
185                   ATTR_NOTHROW_LEAF_LIST)
186 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_GUIDED_START,
187                   "GOMP_loop_ull_guided_start",
188                   BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR,
189                   ATTR_NOTHROW_LEAF_LIST)
190 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_RUNTIME_START,
191                   "GOMP_loop_ull_runtime_start",
192                   BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULLPTR_ULLPTR,
193                   ATTR_NOTHROW_LEAF_LIST)
194 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_NONMONOTONIC_DYNAMIC_START,
195                   "GOMP_loop_ull_nonmonotonic_dynamic_start",
196                   BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR,
197                   ATTR_NOTHROW_LEAF_LIST)
198 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_NONMONOTONIC_GUIDED_START,
199                   "GOMP_loop_ull_nonmonotonic_guided_start",
200                   BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR,
201                   ATTR_NOTHROW_LEAF_LIST)
202 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_STATIC_START,
203                   "GOMP_loop_ull_ordered_static_start",
204                   BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR,
205                   ATTR_NOTHROW_LEAF_LIST)
206 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_DYNAMIC_START,
207                   "GOMP_loop_ull_ordered_dynamic_start",
208                   BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR,
209                   ATTR_NOTHROW_LEAF_LIST)
210 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_GUIDED_START,
211                   "GOMP_loop_ull_ordered_guided_start",
212                   BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR,
213                   ATTR_NOTHROW_LEAF_LIST)
214 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_RUNTIME_START,
215                   "GOMP_loop_ull_ordered_runtime_start",
216                   BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULLPTR_ULLPTR,
217                   ATTR_NOTHROW_LEAF_LIST)
218 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_DOACROSS_STATIC_START,
219                   "GOMP_loop_ull_doacross_static_start",
220                   BT_FN_BOOL_UINT_ULLPTR_ULL_ULLPTR_ULLPTR,
221                   ATTR_NOTHROW_LEAF_LIST)
222 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_DOACROSS_DYNAMIC_START,
223                   "GOMP_loop_ull_doacross_dynamic_start",
224                   BT_FN_BOOL_UINT_ULLPTR_ULL_ULLPTR_ULLPTR,
225                   ATTR_NOTHROW_LEAF_LIST)
226 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_DOACROSS_GUIDED_START,
227                   "GOMP_loop_ull_doacross_guided_start",
228                   BT_FN_BOOL_UINT_ULLPTR_ULL_ULLPTR_ULLPTR,
229                   ATTR_NOTHROW_LEAF_LIST)
230 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_DOACROSS_RUNTIME_START,
231                   "GOMP_loop_ull_doacross_runtime_start",
232                   BT_FN_BOOL_UINT_ULLPTR_ULLPTR_ULLPTR,
233                   ATTR_NOTHROW_LEAF_LIST)
234 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_STATIC_NEXT,
235                   "GOMP_loop_ull_static_next",
236                   BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST)
237 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_DYNAMIC_NEXT,
238                   "GOMP_loop_ull_dynamic_next",
239                   BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST)
240 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_GUIDED_NEXT,
241                   "GOMP_loop_ull_guided_next",
242                   BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST)
243 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_RUNTIME_NEXT,
244                   "GOMP_loop_ull_runtime_next",
245                   BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST)
246 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_NONMONOTONIC_DYNAMIC_NEXT,
247                   "GOMP_loop_ull_nonmonotonic_dynamic_next",
248                   BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST)
249 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_NONMONOTONIC_GUIDED_NEXT,
250                   "GOMP_loop_ull_nonmonotonic_guided_next",
251                   BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST)
252 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_STATIC_NEXT,
253                   "GOMP_loop_ull_ordered_static_next",
254                   BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST)
255 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_DYNAMIC_NEXT,
256                   "GOMP_loop_ull_ordered_dynamic_next",
257                   BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST)
258 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_GUIDED_NEXT,
259                   "GOMP_loop_ull_ordered_guided_next",
260                   BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST)
261 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_ULL_ORDERED_RUNTIME_NEXT,
262                   "GOMP_loop_ull_ordered_runtime_next",
263                   BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, ATTR_NOTHROW_LEAF_LIST)
264 /* NOTE: Do not change the order of BUILT_IN_GOMP_PARALLEL_LOOP_*.
265    They are used in index arithmetic with enum omp_clause_schedule_kind
266    in omp-low.c.  */
267 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_LOOP_STATIC,
268                   "GOMP_parallel_loop_static",
269                   BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG_UINT,
270                   ATTR_NOTHROW_LIST)
271 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_LOOP_DYNAMIC,
272                   "GOMP_parallel_loop_dynamic",
273                   BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG_UINT,
274                   ATTR_NOTHROW_LIST)
275 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_LOOP_GUIDED,
276                   "GOMP_parallel_loop_guided",
277                   BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG_UINT,
278                   ATTR_NOTHROW_LIST)
279 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_LOOP_RUNTIME,
280                   "GOMP_parallel_loop_runtime",
281                   BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_UINT,
282                   ATTR_NOTHROW_LIST)
283 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_LOOP_NONMONOTONIC_DYNAMIC,
284                   "GOMP_parallel_loop_nonmonotonic_dynamic",
285                   BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG_UINT,
286                   ATTR_NOTHROW_LIST)
287 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_LOOP_NONMONOTONIC_GUIDED,
288                   "GOMP_parallel_loop_nonmonotonic_guided",
289                   BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG_UINT,
290                   ATTR_NOTHROW_LIST)
291 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_END, "GOMP_loop_end",
292                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
293 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_END_CANCEL, "GOMP_loop_end_cancel",
294                   BT_FN_BOOL, ATTR_NOTHROW_LEAF_LIST)
295 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_END_NOWAIT, "GOMP_loop_end_nowait",
296                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
297 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ORDERED_START, "GOMP_ordered_start",
298                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
299 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ORDERED_END, "GOMP_ordered_end",
300                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
301 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_DOACROSS_POST, "GOMP_doacross_post",
302                   BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
303 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_DOACROSS_WAIT, "GOMP_doacross_wait",
304                   BT_FN_VOID_LONG_VAR, ATTR_NOTHROW_LEAF_LIST)
305 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_DOACROSS_ULL_POST, "GOMP_doacross_ull_post",
306                   BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
307 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_DOACROSS_ULL_WAIT, "GOMP_doacross_ull_wait",
308                   BT_FN_VOID_ULL_VAR, ATTR_NOTHROW_LEAF_LIST)
309 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL, "GOMP_parallel",
310                   BT_FN_VOID_OMPFN_PTR_UINT_UINT, ATTR_NOTHROW_LIST)
311 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TASK, "GOMP_task",
312                   BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_BOOL_UINT_PTR_INT,
313                   ATTR_NOTHROW_LIST)
314 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TASKLOOP, "GOMP_taskloop",
315                   BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_UINT_LONG_INT_LONG_LONG_LONG,
316                   ATTR_NOTHROW_LIST)
317 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TASKLOOP_ULL, "GOMP_taskloop_ull",
318                   BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_UINT_LONG_INT_ULL_ULL_ULL,
319                   ATTR_NOTHROW_LIST)
320 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_START, "GOMP_sections_start",
321                   BT_FN_UINT_UINT, ATTR_NOTHROW_LEAF_LIST)
322 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_NEXT, "GOMP_sections_next",
323                   BT_FN_UINT, ATTR_NOTHROW_LEAF_LIST)
324 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_SECTIONS,
325                   "GOMP_parallel_sections",
326                   BT_FN_VOID_OMPFN_PTR_UINT_UINT_UINT, ATTR_NOTHROW_LIST)
327 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_END, "GOMP_sections_end",
328                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
329 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_END_CANCEL,
330                   "GOMP_sections_end_cancel",
331                   BT_FN_BOOL, ATTR_NOTHROW_LEAF_LIST)
332 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_END_NOWAIT,
333                   "GOMP_sections_end_nowait",
334                   BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
335 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SINGLE_START, "GOMP_single_start",
336                   BT_FN_BOOL, ATTR_NOTHROW_LEAF_LIST)
337 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SINGLE_COPY_START, "GOMP_single_copy_start",
338                   BT_FN_PTR, ATTR_NOTHROW_LEAF_LIST)
339 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SINGLE_COPY_END, "GOMP_single_copy_end",
340                   BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
341 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_OFFLOAD_REGISTER, "GOMP_offload_register_ver",
342                   BT_FN_VOID_UINT_PTR_INT_PTR, ATTR_NOTHROW_LIST)
343 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_OFFLOAD_UNREGISTER,
344                   "GOMP_offload_unregister_ver",
345                   BT_FN_VOID_UINT_PTR_INT_PTR, ATTR_NOTHROW_LIST)
346 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TARGET, "GOMP_target_ext",
347                   BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_PTR,
348                   ATTR_NOTHROW_LIST)
349 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TARGET_DATA, "GOMP_target_data_ext",
350                   BT_FN_VOID_INT_SIZE_PTR_PTR_PTR, ATTR_NOTHROW_LIST)
351 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TARGET_END_DATA, "GOMP_target_end_data",
352                   BT_FN_VOID, ATTR_NOTHROW_LIST)
353 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TARGET_UPDATE, "GOMP_target_update_ext",
354                   BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_UINT_PTR,
355                   ATTR_NOTHROW_LIST)
356 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TARGET_ENTER_EXIT_DATA,
357                   "GOMP_target_enter_exit_data",
358                   BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_UINT_PTR, ATTR_NOTHROW_LIST)
359 DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TEAMS, "GOMP_teams",
360                   BT_FN_VOID_UINT_UINT, ATTR_NOTHROW_LIST)
361 DEF_GOACC_BUILTIN (BUILT_IN_GOACC_DECLARE, "GOACC_declare",
362                    BT_FN_VOID_INT_SIZE_PTR_PTR_PTR, ATTR_NOTHROW_LIST)