xref: /dragonfly/contrib/gcc-8.0/gcc/omp-builtins.def (revision 38fd149817dfbff97799f62fcb70be98c4e32523)
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
5This file is part of GCC.
6
7GCC is free software; you can redistribute it and/or modify it under
8the terms of the GNU General Public License as published by the Free
9Software Foundation; either version 3, or (at your option) any later
10version.
11
12GCC is distributed in the hope that it will be useful, but WITHOUT ANY
13WARRANTY; without even the implied warranty of MERCHANTABILITY or
14FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
15for more details.
16
17You should have received a copy of the GNU General Public License
18along 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
32DEF_GOACC_BUILTIN (BUILT_IN_ACC_GET_DEVICE_TYPE, "acc_get_device_type",
33                       BT_FN_INT, ATTR_NOTHROW_LIST)
34DEF_GOACC_BUILTIN (BUILT_IN_GOACC_DATA_START, "GOACC_data_start",
35                       BT_FN_VOID_INT_SIZE_PTR_PTR_PTR, ATTR_NOTHROW_LIST)
36DEF_GOACC_BUILTIN (BUILT_IN_GOACC_DATA_END, "GOACC_data_end",
37                       BT_FN_VOID, ATTR_NOTHROW_LIST)
38DEF_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)
41DEF_GOACC_BUILTIN (BUILT_IN_GOACC_PARALLEL, "GOACC_parallel_keyed",
42                       BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_VAR,
43                       ATTR_NOTHROW_LIST)
44DEF_GOACC_BUILTIN (BUILT_IN_GOACC_UPDATE, "GOACC_update",
45                       BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_INT_INT_VAR,
46                       ATTR_NOTHROW_LIST)
47DEF_GOACC_BUILTIN (BUILT_IN_GOACC_WAIT, "GOACC_wait",
48                       BT_FN_VOID_INT_INT_VAR,
49                       ATTR_NOTHROW_LIST)
50
51DEF_GOACC_BUILTIN_COMPILER (BUILT_IN_ACC_ON_DEVICE, "acc_on_device",
52                                  BT_FN_INT_INT, ATTR_CONST_NOTHROW_LEAF_LIST)
53
54DEF_GOMP_BUILTIN (BUILT_IN_OMP_GET_THREAD_NUM, "omp_get_thread_num",
55                      BT_FN_INT, ATTR_CONST_NOTHROW_LEAF_LIST)
56DEF_GOMP_BUILTIN (BUILT_IN_OMP_GET_NUM_THREADS, "omp_get_num_threads",
57                      BT_FN_INT, ATTR_CONST_NOTHROW_LEAF_LIST)
58DEF_GOMP_BUILTIN (BUILT_IN_OMP_GET_TEAM_NUM, "omp_get_team_num",
59                      BT_FN_INT, ATTR_CONST_NOTHROW_LEAF_LIST)
60DEF_GOMP_BUILTIN (BUILT_IN_OMP_GET_NUM_TEAMS, "omp_get_num_teams",
61                      BT_FN_INT, ATTR_CONST_NOTHROW_LEAF_LIST)
62
63DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ATOMIC_START, "GOMP_atomic_start",
64                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
65DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ATOMIC_END, "GOMP_atomic_end",
66                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
67DEF_GOMP_BUILTIN (BUILT_IN_GOMP_BARRIER, "GOMP_barrier",
68                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
69DEF_GOMP_BUILTIN (BUILT_IN_GOMP_BARRIER_CANCEL, "GOMP_barrier_cancel",
70                      BT_FN_BOOL, ATTR_NOTHROW_LEAF_LIST)
71DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TASKWAIT, "GOMP_taskwait",
72                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
73DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TASKYIELD, "GOMP_taskyield",
74                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
75DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TASKGROUP_START, "GOMP_taskgroup_start",
76                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
77DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TASKGROUP_END, "GOMP_taskgroup_end",
78                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
79DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CANCEL, "GOMP_cancel",
80                      BT_FN_BOOL_INT_BOOL, ATTR_NOTHROW_LEAF_LIST)
81DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CANCELLATION_POINT, "GOMP_cancellation_point",
82                      BT_FN_BOOL_INT, ATTR_NOTHROW_LEAF_LIST)
83DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CRITICAL_START, "GOMP_critical_start",
84                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
85DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CRITICAL_END, "GOMP_critical_end",
86                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
87DEF_GOMP_BUILTIN (BUILT_IN_GOMP_CRITICAL_NAME_START,
88                      "GOMP_critical_name_start",
89                      BT_FN_VOID_PTRPTR, ATTR_NOTHROW_LEAF_LIST)
90DEF_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.  */
96DEF_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)
100DEF_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)
104DEF_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)
108DEF_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)
112DEF_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)
116DEF_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)
120DEF_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)
124DEF_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)
128DEF_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)
132DEF_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)
136DEF_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)
140DEF_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)
144DEF_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)
148DEF_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)
152DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_STATIC_NEXT, "GOMP_loop_static_next",
153                      BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
154DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_DYNAMIC_NEXT, "GOMP_loop_dynamic_next",
155                      BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
156DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_GUIDED_NEXT, "GOMP_loop_guided_next",
157                      BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
158DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_RUNTIME_NEXT, "GOMP_loop_runtime_next",
159                      BT_FN_BOOL_LONGPTR_LONGPTR, ATTR_NOTHROW_LEAF_LIST)
160DEF_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)
163DEF_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)
166DEF_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)
169DEF_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)
172DEF_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)
175DEF_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)
178DEF_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)
182DEF_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)
186DEF_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)
190DEF_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)
194DEF_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)
198DEF_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)
202DEF_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)
206DEF_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)
210DEF_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)
214DEF_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)
218DEF_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)
222DEF_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)
226DEF_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)
230DEF_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)
234DEF_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)
237DEF_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)
240DEF_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)
243DEF_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)
246DEF_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)
249DEF_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)
252DEF_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)
255DEF_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)
258DEF_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)
261DEF_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.  */
267DEF_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)
271DEF_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)
275DEF_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)
279DEF_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)
283DEF_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)
287DEF_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)
291DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_END, "GOMP_loop_end",
292                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
293DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_END_CANCEL, "GOMP_loop_end_cancel",
294                      BT_FN_BOOL, ATTR_NOTHROW_LEAF_LIST)
295DEF_GOMP_BUILTIN (BUILT_IN_GOMP_LOOP_END_NOWAIT, "GOMP_loop_end_nowait",
296                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
297DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ORDERED_START, "GOMP_ordered_start",
298                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
299DEF_GOMP_BUILTIN (BUILT_IN_GOMP_ORDERED_END, "GOMP_ordered_end",
300                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
301DEF_GOMP_BUILTIN (BUILT_IN_GOMP_DOACROSS_POST, "GOMP_doacross_post",
302                      BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
303DEF_GOMP_BUILTIN (BUILT_IN_GOMP_DOACROSS_WAIT, "GOMP_doacross_wait",
304                      BT_FN_VOID_LONG_VAR, ATTR_NOTHROW_LEAF_LIST)
305DEF_GOMP_BUILTIN (BUILT_IN_GOMP_DOACROSS_ULL_POST, "GOMP_doacross_ull_post",
306                      BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
307DEF_GOMP_BUILTIN (BUILT_IN_GOMP_DOACROSS_ULL_WAIT, "GOMP_doacross_ull_wait",
308                      BT_FN_VOID_ULL_VAR, ATTR_NOTHROW_LEAF_LIST)
309DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL, "GOMP_parallel",
310                      BT_FN_VOID_OMPFN_PTR_UINT_UINT, ATTR_NOTHROW_LIST)
311DEF_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)
314DEF_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)
317DEF_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)
320DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_START, "GOMP_sections_start",
321                      BT_FN_UINT_UINT, ATTR_NOTHROW_LEAF_LIST)
322DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_NEXT, "GOMP_sections_next",
323                      BT_FN_UINT, ATTR_NOTHROW_LEAF_LIST)
324DEF_GOMP_BUILTIN (BUILT_IN_GOMP_PARALLEL_SECTIONS,
325                      "GOMP_parallel_sections",
326                      BT_FN_VOID_OMPFN_PTR_UINT_UINT_UINT, ATTR_NOTHROW_LIST)
327DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_END, "GOMP_sections_end",
328                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
329DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_END_CANCEL,
330                      "GOMP_sections_end_cancel",
331                      BT_FN_BOOL, ATTR_NOTHROW_LEAF_LIST)
332DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SECTIONS_END_NOWAIT,
333                      "GOMP_sections_end_nowait",
334                      BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
335DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SINGLE_START, "GOMP_single_start",
336                      BT_FN_BOOL, ATTR_NOTHROW_LEAF_LIST)
337DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SINGLE_COPY_START, "GOMP_single_copy_start",
338                      BT_FN_PTR, ATTR_NOTHROW_LEAF_LIST)
339DEF_GOMP_BUILTIN (BUILT_IN_GOMP_SINGLE_COPY_END, "GOMP_single_copy_end",
340                      BT_FN_VOID_PTR, ATTR_NOTHROW_LEAF_LIST)
341DEF_GOMP_BUILTIN (BUILT_IN_GOMP_OFFLOAD_REGISTER, "GOMP_offload_register_ver",
342                      BT_FN_VOID_UINT_PTR_INT_PTR, ATTR_NOTHROW_LIST)
343DEF_GOMP_BUILTIN (BUILT_IN_GOMP_OFFLOAD_UNREGISTER,
344                      "GOMP_offload_unregister_ver",
345                      BT_FN_VOID_UINT_PTR_INT_PTR, ATTR_NOTHROW_LIST)
346DEF_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)
349DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TARGET_DATA, "GOMP_target_data_ext",
350                      BT_FN_VOID_INT_SIZE_PTR_PTR_PTR, ATTR_NOTHROW_LIST)
351DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TARGET_END_DATA, "GOMP_target_end_data",
352                      BT_FN_VOID, ATTR_NOTHROW_LIST)
353DEF_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)
356DEF_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)
359DEF_GOMP_BUILTIN (BUILT_IN_GOMP_TEAMS, "GOMP_teams",
360                      BT_FN_VOID_UINT_UINT, ATTR_NOTHROW_LIST)
361DEF_GOACC_BUILTIN (BUILT_IN_GOACC_DECLARE, "GOACC_declare",
362                       BT_FN_VOID_INT_SIZE_PTR_PTR_PTR, ATTR_NOTHROW_LIST)
363