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