xref: /netbsd-src/external/gpl3/gcc/lib/libgomp/arch/i386/omp.h (revision e3f649229b25107c3bf6dfc3c7ff34d018eef518)
18b0b8ab1Smrg /* This file is automatically generated.  DO NOT EDIT! */
2*e3f64922Smrg /* Generated from: NetBSD: mknative-gcc,v 1.117 2023/07/31 01:48:37 mrg Exp  */
313795cc7Smrg /* Generated from: NetBSD: mknative.common,v 1.16 2018/04/15 15:13:37 christos Exp  */
48b0b8ab1Smrg 
5*e3f64922Smrg /* Copyright (C) 2005-2022 Free Software Foundation, Inc.
68b0b8ab1Smrg    Contributed by Richard Henderson <rth@redhat.com>.
78b0b8ab1Smrg 
86b5e7a1eSmrg    This file is part of the GNU Offloading and Multi Processing Library
96b5e7a1eSmrg    (libgomp).
108b0b8ab1Smrg 
118b0b8ab1Smrg    Libgomp is free software; you can redistribute it and/or modify it
128b0b8ab1Smrg    under the terms of the GNU General Public License as published by
138b0b8ab1Smrg    the Free Software Foundation; either version 3, or (at your option)
148b0b8ab1Smrg    any later version.
158b0b8ab1Smrg 
168b0b8ab1Smrg    Libgomp is distributed in the hope that it will be useful, but WITHOUT ANY
178b0b8ab1Smrg    WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
188b0b8ab1Smrg    FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
198b0b8ab1Smrg    more details.
208b0b8ab1Smrg 
218b0b8ab1Smrg    Under Section 7 of GPL version 3, you are granted additional
228b0b8ab1Smrg    permissions described in the GCC Runtime Library Exception, version
238b0b8ab1Smrg    3.1, as published by the Free Software Foundation.
248b0b8ab1Smrg 
258b0b8ab1Smrg    You should have received a copy of the GNU General Public License and
268b0b8ab1Smrg    a copy of the GCC Runtime Library Exception along with this program;
278b0b8ab1Smrg    see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
288b0b8ab1Smrg    <http://www.gnu.org/licenses/>.  */
298b0b8ab1Smrg 
306b5e7a1eSmrg #ifndef _OMP_H
316b5e7a1eSmrg #define _OMP_H 1
328b0b8ab1Smrg 
33*e3f64922Smrg #if defined(__GNUC__) && _OPENMP >= 201811
34*e3f64922Smrg # define __GOMP_DEPRECATED_5_0 __attribute__((__deprecated__))
35*e3f64922Smrg #else
36*e3f64922Smrg # define __GOMP_DEPRECATED_5_0
37*e3f64922Smrg #endif
38*e3f64922Smrg 
39*e3f64922Smrg #if defined(__GNUC__) && _OPENMP >= 202011
40*e3f64922Smrg # define __GOMP_DEPRECATED_5_1 __attribute__((__deprecated__))
41*e3f64922Smrg #else
42*e3f64922Smrg # define __GOMP_DEPRECATED_5_1
43*e3f64922Smrg #endif
44*e3f64922Smrg 
458b0b8ab1Smrg #ifndef _LIBGOMP_OMP_LOCK_DEFINED
468b0b8ab1Smrg #define _LIBGOMP_OMP_LOCK_DEFINED 1
478b0b8ab1Smrg /* These two structures get edited by the libgomp build process to
488b0b8ab1Smrg    reflect the shape of the two types.  Their internals are private
498b0b8ab1Smrg    to the library.  */
508b0b8ab1Smrg 
518b0b8ab1Smrg typedef struct
528b0b8ab1Smrg {
538b0b8ab1Smrg   unsigned char _x[4]
548b0b8ab1Smrg     __attribute__((__aligned__(4)));
558b0b8ab1Smrg } omp_lock_t;
568b0b8ab1Smrg 
578b0b8ab1Smrg typedef struct
588b0b8ab1Smrg {
598b0b8ab1Smrg   unsigned char _x[12]
608b0b8ab1Smrg     __attribute__((__aligned__(4)));
618b0b8ab1Smrg } omp_nest_lock_t;
628b0b8ab1Smrg #endif
638b0b8ab1Smrg 
648b0b8ab1Smrg typedef enum omp_sched_t
658b0b8ab1Smrg {
668b0b8ab1Smrg   omp_sched_static = 1,
678b0b8ab1Smrg   omp_sched_dynamic = 2,
688b0b8ab1Smrg   omp_sched_guided = 3,
693d883ed1Smrg   omp_sched_auto = 4,
703d883ed1Smrg   omp_sched_monotonic = 0x80000000U
718b0b8ab1Smrg } omp_sched_t;
728b0b8ab1Smrg 
736b5e7a1eSmrg typedef enum omp_proc_bind_t
746b5e7a1eSmrg {
756b5e7a1eSmrg   omp_proc_bind_false = 0,
766b5e7a1eSmrg   omp_proc_bind_true = 1,
77*e3f64922Smrg   omp_proc_bind_primary = 2,
78*e3f64922Smrg   omp_proc_bind_master __GOMP_DEPRECATED_5_1
79*e3f64922Smrg     = omp_proc_bind_primary,
806b5e7a1eSmrg   omp_proc_bind_close = 3,
816b5e7a1eSmrg   omp_proc_bind_spread = 4
826b5e7a1eSmrg } omp_proc_bind_t;
836b5e7a1eSmrg 
843d883ed1Smrg typedef enum omp_sync_hint_t
853d95d378Smrg {
863d883ed1Smrg   omp_sync_hint_none = 0,
87*e3f64922Smrg   omp_lock_hint_none __GOMP_DEPRECATED_5_0 = omp_sync_hint_none,
883d883ed1Smrg   omp_sync_hint_uncontended = 1,
89*e3f64922Smrg   omp_lock_hint_uncontended __GOMP_DEPRECATED_5_0 = omp_sync_hint_uncontended,
903d883ed1Smrg   omp_sync_hint_contended = 2,
91*e3f64922Smrg   omp_lock_hint_contended __GOMP_DEPRECATED_5_0 = omp_sync_hint_contended,
923d883ed1Smrg   omp_sync_hint_nonspeculative = 4,
93*e3f64922Smrg   omp_lock_hint_nonspeculative __GOMP_DEPRECATED_5_0
94*e3f64922Smrg     = omp_sync_hint_nonspeculative,
953d883ed1Smrg   omp_sync_hint_speculative = 8,
96*e3f64922Smrg   omp_lock_hint_speculative __GOMP_DEPRECATED_5_0 = omp_sync_hint_speculative
973d883ed1Smrg } omp_sync_hint_t;
983d883ed1Smrg 
99*e3f64922Smrg typedef __GOMP_DEPRECATED_5_0 omp_sync_hint_t omp_lock_hint_t;
1003d883ed1Smrg 
1013d883ed1Smrg typedef struct __attribute__((__aligned__ (sizeof (void *)))) omp_depend_t
1023d883ed1Smrg {
1033d883ed1Smrg   char __omp_depend_t__[2 * sizeof (void *)];
1043d883ed1Smrg } omp_depend_t;
1053d883ed1Smrg 
1063d883ed1Smrg typedef enum omp_pause_resource_t
1073d883ed1Smrg {
1083d883ed1Smrg   omp_pause_soft = 1,
1093d883ed1Smrg   omp_pause_hard = 2
1103d883ed1Smrg } omp_pause_resource_t;
1113d95d378Smrg 
112*e3f64922Smrg typedef __UINTPTR_TYPE__ omp_uintptr_t;
113*e3f64922Smrg 
114*e3f64922Smrg #if __cplusplus >= 201103L
115*e3f64922Smrg # define __GOMP_UINTPTR_T_ENUM : omp_uintptr_t
116*e3f64922Smrg #else
117*e3f64922Smrg # define __GOMP_UINTPTR_T_ENUM
118*e3f64922Smrg #endif
119*e3f64922Smrg 
120*e3f64922Smrg typedef enum omp_memspace_handle_t __GOMP_UINTPTR_T_ENUM
121*e3f64922Smrg {
122*e3f64922Smrg   omp_default_mem_space = 0,
123*e3f64922Smrg   omp_large_cap_mem_space = 1,
124*e3f64922Smrg   omp_const_mem_space = 2,
125*e3f64922Smrg   omp_high_bw_mem_space = 3,
126*e3f64922Smrg   omp_low_lat_mem_space = 4,
127*e3f64922Smrg   __omp_memspace_handle_t_max__ = __UINTPTR_MAX__
128*e3f64922Smrg } omp_memspace_handle_t;
129*e3f64922Smrg 
130*e3f64922Smrg typedef enum omp_allocator_handle_t __GOMP_UINTPTR_T_ENUM
131*e3f64922Smrg {
132*e3f64922Smrg   omp_null_allocator = 0,
133*e3f64922Smrg   omp_default_mem_alloc = 1,
134*e3f64922Smrg   omp_large_cap_mem_alloc = 2,
135*e3f64922Smrg   omp_const_mem_alloc = 3,
136*e3f64922Smrg   omp_high_bw_mem_alloc = 4,
137*e3f64922Smrg   omp_low_lat_mem_alloc = 5,
138*e3f64922Smrg   omp_cgroup_mem_alloc = 6,
139*e3f64922Smrg   omp_pteam_mem_alloc = 7,
140*e3f64922Smrg   omp_thread_mem_alloc = 8,
141*e3f64922Smrg   __omp_allocator_handle_t_max__ = __UINTPTR_MAX__
142*e3f64922Smrg } omp_allocator_handle_t;
143*e3f64922Smrg 
144*e3f64922Smrg typedef enum omp_alloctrait_key_t
145*e3f64922Smrg {
146*e3f64922Smrg   omp_atk_sync_hint = 1,
147*e3f64922Smrg   omp_atk_alignment = 2,
148*e3f64922Smrg   omp_atk_access = 3,
149*e3f64922Smrg   omp_atk_pool_size = 4,
150*e3f64922Smrg   omp_atk_fallback = 5,
151*e3f64922Smrg   omp_atk_fb_data = 6,
152*e3f64922Smrg   omp_atk_pinned = 7,
153*e3f64922Smrg   omp_atk_partition = 8
154*e3f64922Smrg } omp_alloctrait_key_t;
155*e3f64922Smrg 
156*e3f64922Smrg typedef enum omp_alloctrait_value_t
157*e3f64922Smrg {
158*e3f64922Smrg   omp_atv_default = (__UINTPTR_TYPE__) -1,
159*e3f64922Smrg   omp_atv_false = 0,
160*e3f64922Smrg   omp_atv_true = 1,
161*e3f64922Smrg   omp_atv_contended = 3,
162*e3f64922Smrg   omp_atv_uncontended = 4,
163*e3f64922Smrg   omp_atv_serialized = 5,
164*e3f64922Smrg   omp_atv_sequential __GOMP_DEPRECATED_5_1 = omp_atv_serialized,
165*e3f64922Smrg   omp_atv_private = 6,
166*e3f64922Smrg   omp_atv_all = 7,
167*e3f64922Smrg   omp_atv_thread = 8,
168*e3f64922Smrg   omp_atv_pteam = 9,
169*e3f64922Smrg   omp_atv_cgroup = 10,
170*e3f64922Smrg   omp_atv_default_mem_fb = 11,
171*e3f64922Smrg   omp_atv_null_fb = 12,
172*e3f64922Smrg   omp_atv_abort_fb = 13,
173*e3f64922Smrg   omp_atv_allocator_fb = 14,
174*e3f64922Smrg   omp_atv_environment = 15,
175*e3f64922Smrg   omp_atv_nearest = 16,
176*e3f64922Smrg   omp_atv_blocked = 17,
177*e3f64922Smrg   omp_atv_interleaved = 18
178*e3f64922Smrg } omp_alloctrait_value_t;
179*e3f64922Smrg 
180*e3f64922Smrg typedef struct omp_alloctrait_t
181*e3f64922Smrg {
182*e3f64922Smrg   omp_alloctrait_key_t key;
183*e3f64922Smrg   omp_uintptr_t value;
184*e3f64922Smrg } omp_alloctrait_t;
185*e3f64922Smrg 
186*e3f64922Smrg typedef enum omp_event_handle_t __GOMP_UINTPTR_T_ENUM
187*e3f64922Smrg {
188*e3f64922Smrg   __omp_event_handle_t_max__ = __UINTPTR_MAX__
189*e3f64922Smrg } omp_event_handle_t;
190*e3f64922Smrg 
1918b0b8ab1Smrg #ifdef __cplusplus
1928b0b8ab1Smrg extern "C" {
1938b0b8ab1Smrg # define __GOMP_NOTHROW throw ()
194*e3f64922Smrg # define __GOMP_DEFAULT_NULL_ALLOCATOR = omp_null_allocator
1958b0b8ab1Smrg #else
1968b0b8ab1Smrg # define __GOMP_NOTHROW __attribute__((__nothrow__))
197*e3f64922Smrg # define __GOMP_DEFAULT_NULL_ALLOCATOR
1988b0b8ab1Smrg #endif
1998b0b8ab1Smrg 
2008b0b8ab1Smrg extern void omp_set_num_threads (int) __GOMP_NOTHROW;
2018b0b8ab1Smrg extern int omp_get_num_threads (void) __GOMP_NOTHROW;
2028b0b8ab1Smrg extern int omp_get_max_threads (void) __GOMP_NOTHROW;
2038b0b8ab1Smrg extern int omp_get_thread_num (void) __GOMP_NOTHROW;
2048b0b8ab1Smrg extern int omp_get_num_procs (void) __GOMP_NOTHROW;
2058b0b8ab1Smrg 
2068b0b8ab1Smrg extern int omp_in_parallel (void) __GOMP_NOTHROW;
2078b0b8ab1Smrg 
2088b0b8ab1Smrg extern void omp_set_dynamic (int) __GOMP_NOTHROW;
2098b0b8ab1Smrg extern int omp_get_dynamic (void) __GOMP_NOTHROW;
2108b0b8ab1Smrg 
211*e3f64922Smrg extern void omp_set_nested (int) __GOMP_NOTHROW __GOMP_DEPRECATED_5_0;
212*e3f64922Smrg extern int omp_get_nested (void) __GOMP_NOTHROW __GOMP_DEPRECATED_5_0;
2138b0b8ab1Smrg 
2148b0b8ab1Smrg extern void omp_init_lock (omp_lock_t *) __GOMP_NOTHROW;
2153d883ed1Smrg extern void omp_init_lock_with_hint (omp_lock_t *, omp_sync_hint_t)
2163d95d378Smrg   __GOMP_NOTHROW;
2178b0b8ab1Smrg extern void omp_destroy_lock (omp_lock_t *) __GOMP_NOTHROW;
2188b0b8ab1Smrg extern void omp_set_lock (omp_lock_t *) __GOMP_NOTHROW;
2198b0b8ab1Smrg extern void omp_unset_lock (omp_lock_t *) __GOMP_NOTHROW;
2208b0b8ab1Smrg extern int omp_test_lock (omp_lock_t *) __GOMP_NOTHROW;
2218b0b8ab1Smrg 
2228b0b8ab1Smrg extern void omp_init_nest_lock (omp_nest_lock_t *) __GOMP_NOTHROW;
2233d883ed1Smrg extern void omp_init_nest_lock_with_hint (omp_nest_lock_t *, omp_sync_hint_t)
2243d95d378Smrg   __GOMP_NOTHROW;
2258b0b8ab1Smrg extern void omp_destroy_nest_lock (omp_nest_lock_t *) __GOMP_NOTHROW;
2268b0b8ab1Smrg extern void omp_set_nest_lock (omp_nest_lock_t *) __GOMP_NOTHROW;
2278b0b8ab1Smrg extern void omp_unset_nest_lock (omp_nest_lock_t *) __GOMP_NOTHROW;
2288b0b8ab1Smrg extern int omp_test_nest_lock (omp_nest_lock_t *) __GOMP_NOTHROW;
2298b0b8ab1Smrg 
2308b0b8ab1Smrg extern double omp_get_wtime (void) __GOMP_NOTHROW;
2318b0b8ab1Smrg extern double omp_get_wtick (void) __GOMP_NOTHROW;
2328b0b8ab1Smrg 
2336b5e7a1eSmrg extern void omp_set_schedule (omp_sched_t, int) __GOMP_NOTHROW;
2346b5e7a1eSmrg extern void omp_get_schedule (omp_sched_t *, int *) __GOMP_NOTHROW;
2356b5e7a1eSmrg extern int omp_get_thread_limit (void) __GOMP_NOTHROW;
2366b5e7a1eSmrg extern void omp_set_max_active_levels (int) __GOMP_NOTHROW;
2376b5e7a1eSmrg extern int omp_get_max_active_levels (void) __GOMP_NOTHROW;
238*e3f64922Smrg extern int omp_get_supported_active_levels (void) __GOMP_NOTHROW;
2396b5e7a1eSmrg extern int omp_get_level (void) __GOMP_NOTHROW;
2406b5e7a1eSmrg extern int omp_get_ancestor_thread_num (int) __GOMP_NOTHROW;
2416b5e7a1eSmrg extern int omp_get_team_size (int) __GOMP_NOTHROW;
2426b5e7a1eSmrg extern int omp_get_active_level (void) __GOMP_NOTHROW;
2438b0b8ab1Smrg 
2446b5e7a1eSmrg extern int omp_in_final (void) __GOMP_NOTHROW;
2456b5e7a1eSmrg 
2466b5e7a1eSmrg extern int omp_get_cancellation (void) __GOMP_NOTHROW;
2476b5e7a1eSmrg extern omp_proc_bind_t omp_get_proc_bind (void) __GOMP_NOTHROW;
2483d95d378Smrg extern int omp_get_num_places (void) __GOMP_NOTHROW;
2493d95d378Smrg extern int omp_get_place_num_procs (int) __GOMP_NOTHROW;
2503d95d378Smrg extern void omp_get_place_proc_ids (int, int *) __GOMP_NOTHROW;
2513d95d378Smrg extern int omp_get_place_num (void) __GOMP_NOTHROW;
2523d95d378Smrg extern int omp_get_partition_num_places (void) __GOMP_NOTHROW;
2533d95d378Smrg extern void omp_get_partition_place_nums (int *) __GOMP_NOTHROW;
2546b5e7a1eSmrg 
2556b5e7a1eSmrg extern void omp_set_default_device (int) __GOMP_NOTHROW;
2566b5e7a1eSmrg extern int omp_get_default_device (void) __GOMP_NOTHROW;
2576b5e7a1eSmrg extern int omp_get_num_devices (void) __GOMP_NOTHROW;
258*e3f64922Smrg extern int omp_get_device_num (void) __GOMP_NOTHROW;
2596b5e7a1eSmrg extern int omp_get_num_teams (void) __GOMP_NOTHROW;
2606b5e7a1eSmrg extern int omp_get_team_num (void) __GOMP_NOTHROW;
2616b5e7a1eSmrg 
2626b5e7a1eSmrg extern int omp_is_initial_device (void) __GOMP_NOTHROW;
2633d95d378Smrg extern int omp_get_initial_device (void) __GOMP_NOTHROW;
2643d95d378Smrg extern int omp_get_max_task_priority (void) __GOMP_NOTHROW;
2653d95d378Smrg 
266*e3f64922Smrg extern void omp_fulfill_event (omp_event_handle_t) __GOMP_NOTHROW;
267*e3f64922Smrg 
268*e3f64922Smrg extern void omp_set_num_teams (int) __GOMP_NOTHROW;
269*e3f64922Smrg extern int omp_get_max_teams (void) __GOMP_NOTHROW;
270*e3f64922Smrg extern void omp_set_teams_thread_limit (int) __GOMP_NOTHROW;
271*e3f64922Smrg extern int omp_get_teams_thread_limit (void) __GOMP_NOTHROW;
272*e3f64922Smrg 
2733d95d378Smrg extern void *omp_target_alloc (__SIZE_TYPE__, int) __GOMP_NOTHROW;
2743d95d378Smrg extern void omp_target_free (void *, int) __GOMP_NOTHROW;
2753d883ed1Smrg extern int omp_target_is_present (const void *, int) __GOMP_NOTHROW;
2763d883ed1Smrg extern int omp_target_memcpy (void *, const void *, __SIZE_TYPE__,
2773d883ed1Smrg 			      __SIZE_TYPE__, __SIZE_TYPE__, int, int)
2783d883ed1Smrg   __GOMP_NOTHROW;
2793d883ed1Smrg extern int omp_target_memcpy_rect (void *, const void *, __SIZE_TYPE__, int,
2803d95d378Smrg 				   const __SIZE_TYPE__ *,
2813d95d378Smrg 				   const __SIZE_TYPE__ *,
2823d95d378Smrg 				   const __SIZE_TYPE__ *,
2833d95d378Smrg 				   const __SIZE_TYPE__ *,
2843d95d378Smrg 				   const __SIZE_TYPE__ *, int, int)
2853d95d378Smrg   __GOMP_NOTHROW;
2863d883ed1Smrg extern int omp_target_associate_ptr (const void *, const void *, __SIZE_TYPE__,
2873d95d378Smrg 				     __SIZE_TYPE__, int) __GOMP_NOTHROW;
2883d883ed1Smrg extern int omp_target_disassociate_ptr (const void *, int) __GOMP_NOTHROW;
2893d883ed1Smrg 
2903d883ed1Smrg extern void omp_set_affinity_format (const char *) __GOMP_NOTHROW;
2913d883ed1Smrg extern __SIZE_TYPE__ omp_get_affinity_format (char *, __SIZE_TYPE__)
2923d883ed1Smrg   __GOMP_NOTHROW;
2933d883ed1Smrg extern void omp_display_affinity (const char *) __GOMP_NOTHROW;
2943d883ed1Smrg extern __SIZE_TYPE__ omp_capture_affinity (char *, __SIZE_TYPE__, const char *)
2953d883ed1Smrg   __GOMP_NOTHROW;
2963d883ed1Smrg 
2973d883ed1Smrg extern int omp_pause_resource (omp_pause_resource_t, int) __GOMP_NOTHROW;
2983d883ed1Smrg extern int omp_pause_resource_all (omp_pause_resource_t) __GOMP_NOTHROW;
29949d8c9ecSmrg 
300*e3f64922Smrg extern omp_allocator_handle_t omp_init_allocator (omp_memspace_handle_t,
301*e3f64922Smrg 						  int,
302*e3f64922Smrg 						  const omp_alloctrait_t [])
303*e3f64922Smrg   __GOMP_NOTHROW;
304*e3f64922Smrg extern void omp_destroy_allocator (omp_allocator_handle_t) __GOMP_NOTHROW;
305*e3f64922Smrg extern void omp_set_default_allocator (omp_allocator_handle_t) __GOMP_NOTHROW;
306*e3f64922Smrg extern omp_allocator_handle_t omp_get_default_allocator (void) __GOMP_NOTHROW;
307*e3f64922Smrg extern void omp_free (void *,
308*e3f64922Smrg 		      omp_allocator_handle_t __GOMP_DEFAULT_NULL_ALLOCATOR)
309*e3f64922Smrg   __GOMP_NOTHROW;
310*e3f64922Smrg extern void *omp_alloc (__SIZE_TYPE__,
311*e3f64922Smrg 			omp_allocator_handle_t __GOMP_DEFAULT_NULL_ALLOCATOR)
312*e3f64922Smrg   __GOMP_NOTHROW __attribute__((__malloc__, __malloc__ (omp_free),
313*e3f64922Smrg 				__alloc_size__ (1)));
314*e3f64922Smrg extern void *omp_aligned_alloc (__SIZE_TYPE__, __SIZE_TYPE__,
315*e3f64922Smrg 				omp_allocator_handle_t
316*e3f64922Smrg 				__GOMP_DEFAULT_NULL_ALLOCATOR)
317*e3f64922Smrg   __GOMP_NOTHROW __attribute__((__malloc__, __malloc__ (omp_free),
318*e3f64922Smrg 				__alloc_size__ (2), __alloc_align__ (1)));
319*e3f64922Smrg extern void *omp_calloc (__SIZE_TYPE__, __SIZE_TYPE__,
320*e3f64922Smrg 			 omp_allocator_handle_t __GOMP_DEFAULT_NULL_ALLOCATOR)
321*e3f64922Smrg   __GOMP_NOTHROW __attribute__((__malloc__, __malloc__ (omp_free),
322*e3f64922Smrg 				__alloc_size__ (1, 2)));
323*e3f64922Smrg extern void *omp_aligned_calloc (__SIZE_TYPE__, __SIZE_TYPE__, __SIZE_TYPE__,
324*e3f64922Smrg 				 omp_allocator_handle_t
325*e3f64922Smrg 				 __GOMP_DEFAULT_NULL_ALLOCATOR)
326*e3f64922Smrg   __GOMP_NOTHROW __attribute__((__malloc__, __malloc__ (omp_free),
327*e3f64922Smrg 				__alloc_size__ (2, 3), __alloc_align__ (1)));
328*e3f64922Smrg extern void *omp_realloc (void *, __SIZE_TYPE__,
329*e3f64922Smrg 			  omp_allocator_handle_t __GOMP_DEFAULT_NULL_ALLOCATOR,
330*e3f64922Smrg 			  omp_allocator_handle_t __GOMP_DEFAULT_NULL_ALLOCATOR)
331*e3f64922Smrg   __GOMP_NOTHROW __attribute__((__malloc__ (omp_free), __alloc_size__ (2)));
332*e3f64922Smrg 
333*e3f64922Smrg extern void omp_display_env (int) __GOMP_NOTHROW;
334*e3f64922Smrg 
3358b0b8ab1Smrg #ifdef __cplusplus
3368b0b8ab1Smrg }
3378b0b8ab1Smrg #endif
3388b0b8ab1Smrg 
3396b5e7a1eSmrg #endif /* _OMP_H */
340