xref: /minix3/external/gpl3/gcc/lib/libgomp/arch/vax/omp.h (revision 18a5822eff3a5bdeb6301a60d7d6269594c7ce35)
1*18a5822eSThomas Veerman /* This file is automatically generated.  DO NOT EDIT! */
2*18a5822eSThomas Veerman /* Generated from: 	NetBSD: mknative-gcc,v 1.58 2011/07/02 13:25:05 mrg Exp  */
3*18a5822eSThomas Veerman /* Generated from: NetBSD: mknative.common,v 1.9 2007/02/05 18:26:01 apb Exp  */
4*18a5822eSThomas Veerman 
5*18a5822eSThomas Veerman /* Copyright (C) 2005, 2007, 2008, 2009 Free Software Foundation, Inc.
6*18a5822eSThomas Veerman    Contributed by Richard Henderson <rth@redhat.com>.
7*18a5822eSThomas Veerman 
8*18a5822eSThomas Veerman    This file is part of the GNU OpenMP Library (libgomp).
9*18a5822eSThomas Veerman 
10*18a5822eSThomas Veerman    Libgomp is free software; you can redistribute it and/or modify it
11*18a5822eSThomas Veerman    under the terms of the GNU General Public License as published by
12*18a5822eSThomas Veerman    the Free Software Foundation; either version 3, or (at your option)
13*18a5822eSThomas Veerman    any later version.
14*18a5822eSThomas Veerman 
15*18a5822eSThomas Veerman    Libgomp is distributed in the hope that it will be useful, but WITHOUT ANY
16*18a5822eSThomas Veerman    WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
17*18a5822eSThomas Veerman    FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
18*18a5822eSThomas Veerman    more details.
19*18a5822eSThomas Veerman 
20*18a5822eSThomas Veerman    Under Section 7 of GPL version 3, you are granted additional
21*18a5822eSThomas Veerman    permissions described in the GCC Runtime Library Exception, version
22*18a5822eSThomas Veerman    3.1, as published by the Free Software Foundation.
23*18a5822eSThomas Veerman 
24*18a5822eSThomas Veerman    You should have received a copy of the GNU General Public License and
25*18a5822eSThomas Veerman    a copy of the GCC Runtime Library Exception along with this program;
26*18a5822eSThomas Veerman    see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
27*18a5822eSThomas Veerman    <http://www.gnu.org/licenses/>.  */
28*18a5822eSThomas Veerman 
29*18a5822eSThomas Veerman #ifndef OMP_H
30*18a5822eSThomas Veerman #define OMP_H 1
31*18a5822eSThomas Veerman 
32*18a5822eSThomas Veerman #ifndef _LIBGOMP_OMP_LOCK_DEFINED
33*18a5822eSThomas Veerman #define _LIBGOMP_OMP_LOCK_DEFINED 1
34*18a5822eSThomas Veerman /* These two structures get edited by the libgomp build process to
35*18a5822eSThomas Veerman    reflect the shape of the two types.  Their internals are private
36*18a5822eSThomas Veerman    to the library.  */
37*18a5822eSThomas Veerman 
38*18a5822eSThomas Veerman typedef struct
39*18a5822eSThomas Veerman {
40*18a5822eSThomas Veerman   unsigned char _x[4]
41*18a5822eSThomas Veerman     __attribute__((__aligned__(4)));
42*18a5822eSThomas Veerman } omp_lock_t;
43*18a5822eSThomas Veerman 
44*18a5822eSThomas Veerman typedef struct
45*18a5822eSThomas Veerman {
46*18a5822eSThomas Veerman   unsigned char _x[12]
47*18a5822eSThomas Veerman     __attribute__((__aligned__(4)));
48*18a5822eSThomas Veerman } omp_nest_lock_t;
49*18a5822eSThomas Veerman #endif
50*18a5822eSThomas Veerman 
51*18a5822eSThomas Veerman typedef enum omp_sched_t
52*18a5822eSThomas Veerman {
53*18a5822eSThomas Veerman   omp_sched_static = 1,
54*18a5822eSThomas Veerman   omp_sched_dynamic = 2,
55*18a5822eSThomas Veerman   omp_sched_guided = 3,
56*18a5822eSThomas Veerman   omp_sched_auto = 4
57*18a5822eSThomas Veerman } omp_sched_t;
58*18a5822eSThomas Veerman 
59*18a5822eSThomas Veerman #ifdef __cplusplus
60*18a5822eSThomas Veerman extern "C" {
61*18a5822eSThomas Veerman # define __GOMP_NOTHROW throw ()
62*18a5822eSThomas Veerman #else
63*18a5822eSThomas Veerman # define __GOMP_NOTHROW __attribute__((__nothrow__))
64*18a5822eSThomas Veerman #endif
65*18a5822eSThomas Veerman 
66*18a5822eSThomas Veerman extern void omp_set_num_threads (int) __GOMP_NOTHROW;
67*18a5822eSThomas Veerman extern int omp_get_num_threads (void) __GOMP_NOTHROW;
68*18a5822eSThomas Veerman extern int omp_get_max_threads (void) __GOMP_NOTHROW;
69*18a5822eSThomas Veerman extern int omp_get_thread_num (void) __GOMP_NOTHROW;
70*18a5822eSThomas Veerman extern int omp_get_num_procs (void) __GOMP_NOTHROW;
71*18a5822eSThomas Veerman 
72*18a5822eSThomas Veerman extern int omp_in_parallel (void) __GOMP_NOTHROW;
73*18a5822eSThomas Veerman 
74*18a5822eSThomas Veerman extern void omp_set_dynamic (int) __GOMP_NOTHROW;
75*18a5822eSThomas Veerman extern int omp_get_dynamic (void) __GOMP_NOTHROW;
76*18a5822eSThomas Veerman 
77*18a5822eSThomas Veerman extern void omp_set_nested (int) __GOMP_NOTHROW;
78*18a5822eSThomas Veerman extern int omp_get_nested (void) __GOMP_NOTHROW;
79*18a5822eSThomas Veerman 
80*18a5822eSThomas Veerman extern void omp_init_lock (omp_lock_t *) __GOMP_NOTHROW;
81*18a5822eSThomas Veerman extern void omp_destroy_lock (omp_lock_t *) __GOMP_NOTHROW;
82*18a5822eSThomas Veerman extern void omp_set_lock (omp_lock_t *) __GOMP_NOTHROW;
83*18a5822eSThomas Veerman extern void omp_unset_lock (omp_lock_t *) __GOMP_NOTHROW;
84*18a5822eSThomas Veerman extern int omp_test_lock (omp_lock_t *) __GOMP_NOTHROW;
85*18a5822eSThomas Veerman 
86*18a5822eSThomas Veerman extern void omp_init_nest_lock (omp_nest_lock_t *) __GOMP_NOTHROW;
87*18a5822eSThomas Veerman extern void omp_destroy_nest_lock (omp_nest_lock_t *) __GOMP_NOTHROW;
88*18a5822eSThomas Veerman extern void omp_set_nest_lock (omp_nest_lock_t *) __GOMP_NOTHROW;
89*18a5822eSThomas Veerman extern void omp_unset_nest_lock (omp_nest_lock_t *) __GOMP_NOTHROW;
90*18a5822eSThomas Veerman extern int omp_test_nest_lock (omp_nest_lock_t *) __GOMP_NOTHROW;
91*18a5822eSThomas Veerman 
92*18a5822eSThomas Veerman extern double omp_get_wtime (void) __GOMP_NOTHROW;
93*18a5822eSThomas Veerman extern double omp_get_wtick (void) __GOMP_NOTHROW;
94*18a5822eSThomas Veerman 
95*18a5822eSThomas Veerman void omp_set_schedule (omp_sched_t, int) __GOMP_NOTHROW;
96*18a5822eSThomas Veerman void omp_get_schedule (omp_sched_t *, int *) __GOMP_NOTHROW;
97*18a5822eSThomas Veerman int omp_get_thread_limit (void) __GOMP_NOTHROW;
98*18a5822eSThomas Veerman void omp_set_max_active_levels (int) __GOMP_NOTHROW;
99*18a5822eSThomas Veerman int omp_get_max_active_levels (void) __GOMP_NOTHROW;
100*18a5822eSThomas Veerman int omp_get_level (void) __GOMP_NOTHROW;
101*18a5822eSThomas Veerman int omp_get_ancestor_thread_num (int) __GOMP_NOTHROW;
102*18a5822eSThomas Veerman int omp_get_team_size (int) __GOMP_NOTHROW;
103*18a5822eSThomas Veerman int omp_get_active_level (void) __GOMP_NOTHROW;
104*18a5822eSThomas Veerman 
105*18a5822eSThomas Veerman #ifdef __cplusplus
106*18a5822eSThomas Veerman }
107*18a5822eSThomas Veerman #endif
108*18a5822eSThomas Veerman 
109*18a5822eSThomas Veerman #endif /* OMP_H */
110