1! include/40/omp_lib.f.var
2
3!
4!//===----------------------------------------------------------------------===//
5!//
6!//                     The LLVM Compiler Infrastructure
7!//
8!// This file is dual licensed under the MIT and the University of Illinois Open
9!// Source Licenses. See LICENSE.txt for details.
10!//
11!//===----------------------------------------------------------------------===//
12!
13
14!***
15!*** Some of the directives for the following routine extend past column 72,
16!*** so process this file in 132-column mode.
17!***
18
19!dec$ fixedformlinesize:132
20
21      module omp_lib_kinds
22
23        integer, parameter :: omp_integer_kind       = 4
24        integer, parameter :: omp_logical_kind       = 4
25        integer, parameter :: omp_real_kind          = 4
26        integer, parameter :: omp_lock_kind          = int_ptr_kind()
27        integer, parameter :: omp_nest_lock_kind     = int_ptr_kind()
28        integer, parameter :: omp_sched_kind         = omp_integer_kind
29        integer, parameter :: omp_proc_bind_kind     = omp_integer_kind
30        integer, parameter :: kmp_pointer_kind       = int_ptr_kind()
31        integer, parameter :: kmp_size_t_kind        = int_ptr_kind()
32        integer, parameter :: kmp_affinity_mask_kind = int_ptr_kind()
33        integer, parameter :: kmp_cancel_kind        = omp_integer_kind
34
35      end module omp_lib_kinds
36
37      module omp_lib
38
39        use omp_lib_kinds
40
41        integer (kind=omp_integer_kind), parameter :: kmp_version_major = @LIBOMP_VERSION_MAJOR@
42        integer (kind=omp_integer_kind), parameter :: kmp_version_minor = @LIBOMP_VERSION_MINOR@
43        integer (kind=omp_integer_kind), parameter :: kmp_version_build = @LIBOMP_VERSION_BUILD@
44        character(*), parameter :: kmp_build_date    = '@LIBOMP_BUILD_DATE@'
45        integer (kind=omp_integer_kind), parameter :: openmp_version    = @LIBOMP_OMP_YEAR_MONTH@
46
47        integer(kind=omp_sched_kind), parameter :: omp_sched_static  = 1
48        integer(kind=omp_sched_kind), parameter :: omp_sched_dynamic = 2
49        integer(kind=omp_sched_kind), parameter :: omp_sched_guided  = 3
50        integer(kind=omp_sched_kind), parameter :: omp_sched_auto    = 4
51
52        integer (kind=omp_proc_bind_kind), parameter :: omp_proc_bind_false = 0
53        integer (kind=omp_proc_bind_kind), parameter :: omp_proc_bind_true = 1
54        integer (kind=omp_proc_bind_kind), parameter :: omp_proc_bind_master = 2
55        integer (kind=omp_proc_bind_kind), parameter :: omp_proc_bind_close = 3
56        integer (kind=omp_proc_bind_kind), parameter :: omp_proc_bind_spread = 4
57
58        integer (kind=kmp_cancel_kind), parameter :: kmp_cancel_parallel = 1
59        integer (kind=kmp_cancel_kind), parameter :: kmp_cancel_loop = 2
60        integer (kind=kmp_cancel_kind), parameter :: kmp_cancel_sections = 3
61        integer (kind=kmp_cancel_kind), parameter :: kmp_cancel_taskgroup = 4
62
63        interface
64
65!         ***
66!         *** omp_* entry points
67!         ***
68
69          subroutine omp_set_num_threads(num_threads)
70            use omp_lib_kinds
71            integer (kind=omp_integer_kind) num_threads
72          end subroutine omp_set_num_threads
73
74          subroutine omp_set_dynamic(dynamic_threads)
75            use omp_lib_kinds
76            logical (kind=omp_logical_kind) dynamic_threads
77          end subroutine omp_set_dynamic
78
79          subroutine omp_set_nested(nested)
80            use omp_lib_kinds
81            logical (kind=omp_logical_kind) nested
82          end subroutine omp_set_nested
83
84          function omp_get_num_threads()
85            use omp_lib_kinds
86            integer (kind=omp_integer_kind) omp_get_num_threads
87          end function omp_get_num_threads
88
89          function omp_get_max_threads()
90            use omp_lib_kinds
91            integer (kind=omp_integer_kind) omp_get_max_threads
92          end function omp_get_max_threads
93
94          function omp_get_thread_num()
95            use omp_lib_kinds
96            integer (kind=omp_integer_kind) omp_get_thread_num
97          end function omp_get_thread_num
98
99          function omp_get_num_procs()
100            use omp_lib_kinds
101            integer (kind=omp_integer_kind) omp_get_num_procs
102          end function omp_get_num_procs
103
104          function omp_in_parallel()
105            use omp_lib_kinds
106            logical (kind=omp_logical_kind) omp_in_parallel
107          end function omp_in_parallel
108
109          function omp_in_final()
110            use omp_lib_kinds
111            logical (kind=omp_logical_kind) omp_in_final
112          end function omp_in_final
113
114          function omp_get_dynamic()
115            use omp_lib_kinds
116            logical (kind=omp_logical_kind) omp_get_dynamic
117          end function omp_get_dynamic
118
119          function omp_get_nested()
120            use omp_lib_kinds
121            logical (kind=omp_logical_kind) omp_get_nested
122          end function omp_get_nested
123
124          function omp_get_thread_limit()
125            use omp_lib_kinds
126            integer (kind=omp_integer_kind) omp_get_thread_limit
127          end function omp_get_thread_limit
128
129          subroutine omp_set_max_active_levels(max_levels)
130            use omp_lib_kinds
131            integer (kind=omp_integer_kind) max_levels
132          end subroutine omp_set_max_active_levels
133
134          function omp_get_max_active_levels()
135            use omp_lib_kinds
136            integer (kind=omp_integer_kind) omp_get_max_active_levels
137          end function omp_get_max_active_levels
138
139          function omp_get_level()
140            use omp_lib_kinds
141            integer (kind=omp_integer_kind) omp_get_level
142          end function omp_get_level
143
144          function omp_get_active_level()
145            use omp_lib_kinds
146            integer (kind=omp_integer_kind) omp_get_active_level
147          end function omp_get_active_level
148
149          function omp_get_ancestor_thread_num(level)
150            use omp_lib_kinds
151            integer (kind=omp_integer_kind) level
152            integer (kind=omp_integer_kind) omp_get_ancestor_thread_num
153          end function omp_get_ancestor_thread_num
154
155          function omp_get_team_size(level)
156            use omp_lib_kinds
157            integer (kind=omp_integer_kind) level
158            integer (kind=omp_integer_kind) omp_get_team_size
159          end function omp_get_team_size
160
161          subroutine omp_set_schedule(kind, chunk_size)
162            use omp_lib_kinds
163            integer (kind=omp_sched_kind) kind
164            integer (kind=omp_integer_kind) chunk_size
165          end subroutine omp_set_schedule
166
167          subroutine omp_get_schedule(kind, chunk_size)
168            use omp_lib_kinds
169            integer (kind=omp_sched_kind) kind
170            integer (kind=omp_integer_kind) chunk_size
171          end subroutine omp_get_schedule
172
173          function omp_get_proc_bind()
174            use omp_lib_kinds
175            integer (kind=omp_proc_bind_kind) omp_get_proc_bind
176          end function omp_get_proc_bind
177
178          function omp_get_wtime()
179            double precision omp_get_wtime
180          end function omp_get_wtime
181
182          function omp_get_wtick ()
183            double precision omp_get_wtick
184          end function omp_get_wtick
185
186          function omp_get_default_device()
187            use omp_lib_kinds
188            integer (kind=omp_integer_kind) omp_get_default_device
189          end function omp_get_default_device
190
191          subroutine omp_set_default_device(device_num)
192            use omp_lib_kinds
193            integer (kind=omp_integer_kind) device_num
194          end subroutine omp_set_default_device
195
196          function omp_get_num_devices()
197            use omp_lib_kinds
198            integer (kind=omp_integer_kind) omp_get_num_devices
199          end function omp_get_num_devices
200
201          function omp_get_num_teams()
202            use omp_lib_kinds
203            integer (kind=omp_integer_kind) omp_get_num_teams
204          end function omp_get_num_teams
205
206          function omp_get_team_num()
207            use omp_lib_kinds
208            integer (kind=omp_integer_kind) omp_get_team_num
209          end function omp_get_team_num
210
211          function omp_get_cancellation()
212            use omp_lib_kinds
213            integer (kind=omp_integer_kind) omp_get_cancellation
214          end function omp_get_cancellation
215
216          function omp_is_initial_device()
217            use omp_lib_kinds
218            logical (kind=omp_logical_kind) omp_is_initial_device
219          end function omp_is_initial_device
220
221          subroutine omp_init_lock(svar)
222!DIR$ IF(__INTEL_COMPILER.GE.1400)
223!DIR$ attributes known_intrinsic :: omp_init_lock
224!DIR$ ENDIF
225            use omp_lib_kinds
226            integer (kind=omp_lock_kind) svar
227          end subroutine omp_init_lock
228
229          subroutine omp_destroy_lock(svar)
230!DIR$ IF(__INTEL_COMPILER.GE.1400)
231!DIR$ attributes known_intrinsic :: omp_destroy_lock
232!DIR$ ENDIF
233            use omp_lib_kinds
234            integer (kind=omp_lock_kind) svar
235          end subroutine omp_destroy_lock
236
237          subroutine omp_set_lock(svar)
238!DIR$ IF(__INTEL_COMPILER.GE.1400)
239!DIR$ attributes known_intrinsic :: omp_set_lock
240!DIR$ ENDIF
241            use omp_lib_kinds
242            integer (kind=omp_lock_kind) svar
243          end subroutine omp_set_lock
244
245          subroutine omp_unset_lock(svar)
246!DIR$ IF(__INTEL_COMPILER.GE.1400)
247!DIR$ attributes known_intrinsic :: omp_unset_lock
248!DIR$ ENDIF
249            use omp_lib_kinds
250            integer (kind=omp_lock_kind) svar
251          end subroutine omp_unset_lock
252
253          function omp_test_lock(svar)
254!DIR$ IF(__INTEL_COMPILER.GE.1400)
255!DIR$ attributes known_intrinsic :: omp_test_lock
256!DIR$ ENDIF
257            use omp_lib_kinds
258            logical (kind=omp_logical_kind) omp_test_lock
259            integer (kind=omp_lock_kind) svar
260          end function omp_test_lock
261
262          subroutine omp_init_nest_lock(nvar)
263!DIR$ IF(__INTEL_COMPILER.GE.1400)
264!DIR$ attributes known_intrinsic :: omp_init_nest_lock
265!DIR$ ENDIF
266            use omp_lib_kinds
267            integer (kind=omp_nest_lock_kind) nvar
268          end subroutine omp_init_nest_lock
269
270          subroutine omp_destroy_nest_lock(nvar)
271!DIR$ IF(__INTEL_COMPILER.GE.1400)
272!DIR$ attributes known_intrinsic :: omp_destroy_nest_lock
273!DIR$ ENDIF
274            use omp_lib_kinds
275            integer (kind=omp_nest_lock_kind) nvar
276          end subroutine omp_destroy_nest_lock
277
278          subroutine omp_set_nest_lock(nvar)
279!DIR$ IF(__INTEL_COMPILER.GE.1400)
280!DIR$ attributes known_intrinsic :: omp_set_nest_lock
281!DIR$ ENDIF
282            use omp_lib_kinds
283            integer (kind=omp_nest_lock_kind) nvar
284          end subroutine omp_set_nest_lock
285
286          subroutine omp_unset_nest_lock(nvar)
287!DIR$ IF(__INTEL_COMPILER.GE.1400)
288!DIR$ attributes known_intrinsic :: omp_unset_nest_lock
289!DIR$ ENDIF
290            use omp_lib_kinds
291            integer (kind=omp_nest_lock_kind) nvar
292          end subroutine omp_unset_nest_lock
293
294          function omp_test_nest_lock(nvar)
295!DIR$ IF(__INTEL_COMPILER.GE.1400)
296!DIR$ attributes known_intrinsic :: omp_test_nest_lock
297!DIR$ ENDIF
298            use omp_lib_kinds
299            integer (kind=omp_integer_kind) omp_test_nest_lock
300            integer (kind=omp_nest_lock_kind) nvar
301          end function omp_test_nest_lock
302
303!         ***
304!         *** kmp_* entry points
305!         ***
306
307          subroutine kmp_set_stacksize(size)
308            use omp_lib_kinds
309            integer (kind=omp_integer_kind) size
310          end subroutine kmp_set_stacksize
311
312          subroutine kmp_set_stacksize_s(size)
313            use omp_lib_kinds
314            integer (kind=kmp_size_t_kind) size
315          end subroutine kmp_set_stacksize_s
316
317          subroutine kmp_set_blocktime(msec)
318            use omp_lib_kinds
319            integer (kind=omp_integer_kind) msec
320          end subroutine kmp_set_blocktime
321
322          subroutine kmp_set_library_serial()
323          end subroutine kmp_set_library_serial
324
325          subroutine kmp_set_library_turnaround()
326          end subroutine kmp_set_library_turnaround
327
328          subroutine kmp_set_library_throughput()
329          end subroutine kmp_set_library_throughput
330
331          subroutine kmp_set_library(libnum)
332            use omp_lib_kinds
333            integer (kind=omp_integer_kind) libnum
334          end subroutine kmp_set_library
335
336          subroutine kmp_set_defaults(string)
337            character*(*) string
338          end subroutine kmp_set_defaults
339
340          function kmp_get_stacksize()
341            use omp_lib_kinds
342            integer (kind=omp_integer_kind) kmp_get_stacksize
343          end function kmp_get_stacksize
344
345          function kmp_get_stacksize_s()
346            use omp_lib_kinds
347            integer (kind=kmp_size_t_kind) kmp_get_stacksize_s
348          end function kmp_get_stacksize_s
349
350          function kmp_get_blocktime()
351            use omp_lib_kinds
352            integer (kind=omp_integer_kind) kmp_get_blocktime
353          end function kmp_get_blocktime
354
355          function kmp_get_library()
356            use omp_lib_kinds
357            integer (kind=omp_integer_kind) kmp_get_library
358          end function kmp_get_library
359
360          function kmp_set_affinity(mask)
361            use omp_lib_kinds
362            integer (kind=omp_integer_kind) kmp_set_affinity
363            integer (kind=kmp_affinity_mask_kind) mask
364          end function kmp_set_affinity
365
366          function kmp_get_affinity(mask)
367            use omp_lib_kinds
368            integer (kind=omp_integer_kind) kmp_get_affinity
369            integer (kind=kmp_affinity_mask_kind) mask
370          end function kmp_get_affinity
371
372          function kmp_get_affinity_max_proc()
373            use omp_lib_kinds
374            integer (kind=omp_integer_kind) kmp_get_affinity_max_proc
375          end function kmp_get_affinity_max_proc
376
377          subroutine kmp_create_affinity_mask(mask)
378            use omp_lib_kinds
379            integer (kind=kmp_affinity_mask_kind) mask
380          end subroutine kmp_create_affinity_mask
381
382          subroutine kmp_destroy_affinity_mask(mask)
383            use omp_lib_kinds
384            integer (kind=kmp_affinity_mask_kind) mask
385          end subroutine kmp_destroy_affinity_mask
386
387          function kmp_set_affinity_mask_proc(proc, mask)
388            use omp_lib_kinds
389            integer (kind=omp_integer_kind) kmp_set_affinity_mask_proc
390            integer (kind=omp_integer_kind) proc
391            integer (kind=kmp_affinity_mask_kind) mask
392          end function kmp_set_affinity_mask_proc
393
394          function kmp_unset_affinity_mask_proc(proc, mask)
395            use omp_lib_kinds
396            integer (kind=omp_integer_kind) kmp_unset_affinity_mask_proc
397            integer (kind=omp_integer_kind) proc
398            integer (kind=kmp_affinity_mask_kind) mask
399          end function kmp_unset_affinity_mask_proc
400
401          function kmp_get_affinity_mask_proc(proc, mask)
402            use omp_lib_kinds
403            integer (kind=omp_integer_kind) kmp_get_affinity_mask_proc
404            integer (kind=omp_integer_kind) proc
405            integer (kind=kmp_affinity_mask_kind) mask
406          end function kmp_get_affinity_mask_proc
407
408          function kmp_malloc(size)
409            use omp_lib_kinds
410            integer (kind=kmp_pointer_kind) kmp_malloc
411            integer (kind=kmp_size_t_kind) size
412          end function kmp_malloc
413
414          function kmp_aligned_malloc(size, alignment)
415            use omp_lib_kinds
416            integer (kind=kmp_pointer_kind) kmp_aligned_malloc
417            integer (kind=kmp_size_t_kind) size
418            integer (kind=kmp_size_t_kind) alignment
419          end function kmp_aligned_malloc
420
421          function kmp_calloc(nelem, elsize)
422            use omp_lib_kinds
423            integer (kind=kmp_pointer_kind) kmp_calloc
424            integer (kind=kmp_size_t_kind) nelem
425            integer (kind=kmp_size_t_kind) elsize
426          end function kmp_calloc
427
428          function kmp_realloc(ptr, size)
429            use omp_lib_kinds
430            integer (kind=kmp_pointer_kind) kmp_realloc
431            integer (kind=kmp_pointer_kind) ptr
432            integer (kind=kmp_size_t_kind) size
433          end function kmp_realloc
434
435          subroutine kmp_free(ptr)
436            use omp_lib_kinds
437            integer (kind=kmp_pointer_kind) ptr
438          end subroutine kmp_free
439
440          subroutine kmp_set_warnings_on()
441          end subroutine kmp_set_warnings_on
442
443          subroutine kmp_set_warnings_off()
444          end subroutine kmp_set_warnings_off
445
446          function kmp_get_cancellation_status(cancelkind)
447            use omp_lib_kinds
448            integer (kind=kmp_cancel_kind) cancelkind
449            logical (kind=omp_logical_kind) kmp_get_cancellation_status
450          end function kmp_get_cancellation_status
451
452        end interface
453
454!dec$ if defined(_WIN32)
455!dec$   if defined(_WIN64) .or. defined(_M_AMD64)
456
457!***
458!*** The Fortran entry points must be in uppercase, even if the /Qlowercase
459!*** option is specified.  The alias attribute ensures that the specified
460!*** string is used as the entry point.
461!***
462!*** On the Windows* OS IA-32 architecture, the Fortran entry points have an
463!*** underscore prepended.  On the Windows* OS Intel(R) 64
464!*** architecture, no underscore is prepended.
465!***
466
467!dec$ attributes alias:'OMP_SET_NUM_THREADS' :: omp_set_num_threads
468!dec$ attributes alias:'OMP_SET_DYNAMIC' :: omp_set_dynamic
469!dec$ attributes alias:'OMP_SET_NESTED' :: omp_set_nested
470!dec$ attributes alias:'OMP_GET_NUM_THREADS' :: omp_get_num_threads
471!dec$ attributes alias:'OMP_GET_MAX_THREADS' :: omp_get_max_threads
472!dec$ attributes alias:'OMP_GET_THREAD_NUM' :: omp_get_thread_num
473!dec$ attributes alias:'OMP_GET_NUM_PROCS' :: omp_get_num_procs
474!dec$ attributes alias:'OMP_IN_PARALLEL' :: omp_in_parallel
475!dec$ attributes alias:'OMP_GET_DYNAMIC' :: omp_get_dynamic
476!dec$ attributes alias:'OMP_GET_NESTED' :: omp_get_nested
477!dec$ attributes alias:'OMP_GET_THREAD_LIMIT' :: omp_get_thread_limit
478!dec$ attributes alias:'OMP_SET_MAX_ACTIVE_LEVELS' :: omp_set_max_active_levels
479!dec$ attributes alias:'OMP_GET_MAX_ACTIVE_LEVELS' :: omp_get_max_active_levels
480!dec$ attributes alias:'OMP_GET_LEVEL' :: omp_get_level
481!dec$ attributes alias:'OMP_GET_ACTIVE_LEVEL' :: omp_get_active_level
482!dec$ attributes alias:'OMP_GET_ANCESTOR_THREAD_NUM' :: omp_get_ancestor_thread_num
483!dec$ attributes alias:'OMP_GET_TEAM_SIZE' :: omp_get_team_size
484!dec$ attributes alias:'OMP_SET_SCHEDULE' :: omp_set_schedule
485!dec$ attributes alias:'OMP_GET_SCHEDULE' :: omp_get_schedule
486!dec$ attributes alias:'OMP_GET_PROC_BIND' :: omp_get_proc_bind
487!dec$ attributes alias:'OMP_GET_WTIME' :: omp_get_wtime
488!dec$ attributes alias:'OMP_GET_WTICK' :: omp_get_wtick
489!dec$ attributes alias:'OMP_GET_DEFAULT_DEVICE' :: omp_get_default_device
490!dec$ attributes alias:'OMP_SET_DEFAULT_DEVICE' :: omp_set_default_device
491!dec$ attributes alias:'OMP_GET_NUM_DEVICES' :: omp_get_num_devices
492!dec$ attributes alias:'OMP_GET_NUM_TEAMS' :: omp_get_num_teams
493!dec$ attributes alias:'OMP_GET_TEAM_NUM' :: omp_get_team_num
494!dec$ attributes alias:'OMP_GET_CANCELLATION' :: omp_get_cancellation
495!dec$ attributes alias:'OMP_IS_INITIAL_DEVICE' :: omp_is_initial_device
496
497!dec$ attributes alias:'omp_init_lock' :: omp_init_lock
498!dec$ attributes alias:'omp_destroy_lock' :: omp_destroy_lock
499!dec$ attributes alias:'omp_set_lock' :: omp_set_lock
500!dec$ attributes alias:'omp_unset_lock' :: omp_unset_lock
501!dec$ attributes alias:'omp_test_lock' :: omp_test_lock
502!dec$ attributes alias:'omp_init_nest_lock' :: omp_init_nest_lock
503!dec$ attributes alias:'omp_destroy_nest_lock' :: omp_destroy_nest_lock
504!dec$ attributes alias:'omp_set_nest_lock' :: omp_set_nest_lock
505!dec$ attributes alias:'omp_unset_nest_lock' :: omp_unset_nest_lock
506!dec$ attributes alias:'omp_test_nest_lock' :: omp_test_nest_lock
507
508!dec$ attributes alias:'KMP_SET_STACKSIZE'::kmp_set_stacksize
509!dec$ attributes alias:'KMP_SET_STACKSIZE_S'::kmp_set_stacksize_s
510!dec$ attributes alias:'KMP_SET_BLOCKTIME'::kmp_set_blocktime
511!dec$ attributes alias:'KMP_SET_LIBRARY_SERIAL'::kmp_set_library_serial
512!dec$ attributes alias:'KMP_SET_LIBRARY_TURNAROUND'::kmp_set_library_turnaround
513!dec$ attributes alias:'KMP_SET_LIBRARY_THROUGHPUT'::kmp_set_library_throughput
514!dec$ attributes alias:'KMP_SET_LIBRARY'::kmp_set_library
515!dec$ attributes alias:'KMP_GET_STACKSIZE'::kmp_get_stacksize
516!dec$ attributes alias:'KMP_GET_STACKSIZE_S'::kmp_get_stacksize_s
517!dec$ attributes alias:'KMP_GET_BLOCKTIME'::kmp_get_blocktime
518!dec$ attributes alias:'KMP_GET_LIBRARY'::kmp_get_library
519!dec$ attributes alias:'KMP_SET_AFFINITY'::kmp_set_affinity
520!dec$ attributes alias:'KMP_GET_AFFINITY'::kmp_get_affinity
521!dec$ attributes alias:'KMP_GET_AFFINITY_MAX_PROC'::kmp_get_affinity_max_proc
522!dec$ attributes alias:'KMP_CREATE_AFFINITY_MASK'::kmp_create_affinity_mask
523!dec$ attributes alias:'KMP_DESTROY_AFFINITY_MASK'::kmp_destroy_affinity_mask
524!dec$ attributes alias:'KMP_SET_AFFINITY_MASK_PROC'::kmp_set_affinity_mask_proc
525!dec$ attributes alias:'KMP_UNSET_AFFINITY_MASK_PROC'::kmp_unset_affinity_mask_proc
526!dec$ attributes alias:'KMP_GET_AFFINITY_MASK_PROC'::kmp_get_affinity_mask_proc
527!dec$ attributes alias:'KMP_MALLOC'::kmp_malloc
528!dec$ attributes alias:'KMP_ALIGNED_MALLOC'::kmp_aligned_malloc
529!dec$ attributes alias:'KMP_CALLOC'::kmp_calloc
530!dec$ attributes alias:'KMP_REALLOC'::kmp_realloc
531!dec$ attributes alias:'KMP_FREE'::kmp_free
532
533!dec$ attributes alias:'KMP_SET_WARNINGS_ON'::kmp_set_warnings_on
534!dec$ attributes alias:'KMP_SET_WARNINGS_OFF'::kmp_set_warnings_off
535
536!dec$ attributes alias:'KMP_GET_CANCELLATION_STATUS' :: kmp_get_cancellation_status
537
538!dec$   else
539
540!***
541!*** On Windows* OS IA-32 architecture, the Fortran entry points have an underscore prepended.
542!***
543
544!dec$ attributes alias:'_OMP_SET_NUM_THREADS' :: omp_set_num_threads
545!dec$ attributes alias:'_OMP_SET_DYNAMIC' :: omp_set_dynamic
546!dec$ attributes alias:'_OMP_SET_NESTED' :: omp_set_nested
547!dec$ attributes alias:'_OMP_GET_NUM_THREADS' :: omp_get_num_threads
548!dec$ attributes alias:'_OMP_GET_MAX_THREADS' :: omp_get_max_threads
549!dec$ attributes alias:'_OMP_GET_THREAD_NUM' :: omp_get_thread_num
550!dec$ attributes alias:'_OMP_GET_NUM_PROCS' :: omp_get_num_procs
551!dec$ attributes alias:'_OMP_IN_PARALLEL' :: omp_in_parallel
552!dec$ attributes alias:'_OMP_GET_DYNAMIC' :: omp_get_dynamic
553!dec$ attributes alias:'_OMP_GET_NESTED' :: omp_get_nested
554!dec$ attributes alias:'_OMP_GET_THREAD_LIMIT' :: omp_get_thread_limit
555!dec$ attributes alias:'_OMP_SET_MAX_ACTIVE_LEVELS' :: omp_set_max_active_levels
556!dec$ attributes alias:'_OMP_GET_MAX_ACTIVE_LEVELS' :: omp_get_max_active_levels
557!dec$ attributes alias:'_OMP_GET_LEVEL' :: omp_get_level
558!dec$ attributes alias:'_OMP_GET_ACTIVE_LEVEL' :: omp_get_active_level
559!dec$ attributes alias:'_OMP_GET_ANCESTOR_THREAD_NUM' :: omp_get_ancestor_thread_num
560!dec$ attributes alias:'_OMP_GET_TEAM_SIZE' :: omp_get_team_size
561!dec$ attributes alias:'_OMP_SET_SCHEDULE' :: omp_set_schedule
562!dec$ attributes alias:'_OMP_GET_SCHEDULE' :: omp_get_schedule
563!dec$ attributes alias:'_OMP_GET_PROC_BIND' :: omp_get_proc_bind
564!dec$ attributes alias:'_OMP_GET_WTIME' :: omp_get_wtime
565!dec$ attributes alias:'_OMP_GET_WTICK' :: omp_get_wtick
566!dec$ attributes alias:'_OMP_GET_DEFAULT_DEVICE' :: omp_get_default_device
567!dec$ attributes alias:'_OMP_SET_DEFAULT_DEVICE' :: omp_set_default_device
568!dec$ attributes alias:'_OMP_GET_NUM_DEVICES' :: omp_get_num_devices
569!dec$ attributes alias:'_OMP_GET_NUM_TEAMS' :: omp_get_num_teams
570!dec$ attributes alias:'_OMP_GET_TEAM_NUM' :: omp_get_team_num
571!dec$ attributes alias:'_OMP_GET_CANCELLATION' :: omp_get_cancellation
572!dec$ attributes alias:'_OMP_IS_INITIAL_DEVICE' :: omp_is_initial_device
573
574!dec$ attributes alias:'_omp_init_lock' :: omp_init_lock
575!dec$ attributes alias:'_omp_destroy_lock' :: omp_destroy_lock
576!dec$ attributes alias:'_omp_set_lock' :: omp_set_lock
577!dec$ attributes alias:'_omp_unset_lock' :: omp_unset_lock
578!dec$ attributes alias:'_omp_test_lock' :: omp_test_lock
579!dec$ attributes alias:'_omp_init_nest_lock' :: omp_init_nest_lock
580!dec$ attributes alias:'_omp_destroy_nest_lock' :: omp_destroy_nest_lock
581!dec$ attributes alias:'_omp_set_nest_lock' :: omp_set_nest_lock
582!dec$ attributes alias:'_omp_unset_nest_lock' :: omp_unset_nest_lock
583!dec$ attributes alias:'_omp_test_nest_lock' :: omp_test_nest_lock
584
585!dec$ attributes alias:'_KMP_SET_STACKSIZE'::kmp_set_stacksize
586!dec$ attributes alias:'_KMP_SET_STACKSIZE_S'::kmp_set_stacksize_s
587!dec$ attributes alias:'_KMP_SET_BLOCKTIME'::kmp_set_blocktime
588!dec$ attributes alias:'_KMP_SET_LIBRARY_SERIAL'::kmp_set_library_serial
589!dec$ attributes alias:'_KMP_SET_LIBRARY_TURNAROUND'::kmp_set_library_turnaround
590!dec$ attributes alias:'_KMP_SET_LIBRARY_THROUGHPUT'::kmp_set_library_throughput
591!dec$ attributes alias:'_KMP_SET_LIBRARY'::kmp_set_library
592!dec$ attributes alias:'_KMP_GET_STACKSIZE'::kmp_get_stacksize
593!dec$ attributes alias:'_KMP_GET_STACKSIZE_S'::kmp_get_stacksize_s
594!dec$ attributes alias:'_KMP_GET_BLOCKTIME'::kmp_get_blocktime
595!dec$ attributes alias:'_KMP_GET_LIBRARY'::kmp_get_library
596!dec$ attributes alias:'_KMP_SET_AFFINITY'::kmp_set_affinity
597!dec$ attributes alias:'_KMP_GET_AFFINITY'::kmp_get_affinity
598!dec$ attributes alias:'_KMP_GET_AFFINITY_MAX_PROC'::kmp_get_affinity_max_proc
599!dec$ attributes alias:'_KMP_CREATE_AFFINITY_MASK'::kmp_create_affinity_mask
600!dec$ attributes alias:'_KMP_DESTROY_AFFINITY_MASK'::kmp_destroy_affinity_mask
601!dec$ attributes alias:'_KMP_SET_AFFINITY_MASK_PROC'::kmp_set_affinity_mask_proc
602!dec$ attributes alias:'_KMP_UNSET_AFFINITY_MASK_PROC'::kmp_unset_affinity_mask_proc
603!dec$ attributes alias:'_KMP_GET_AFFINITY_MASK_PROC'::kmp_get_affinity_mask_proc
604!dec$ attributes alias:'_KMP_MALLOC'::kmp_malloc
605!dec$ attributes alias:'_KMP_ALIGNED_MALLOC'::kmp_aligned_malloc
606!dec$ attributes alias:'_KMP_CALLOC'::kmp_calloc
607!dec$ attributes alias:'_KMP_REALLOC'::kmp_realloc
608!dec$ attributes alias:'_KMP_FREE'::kmp_free
609
610!dec$ attributes alias:'_KMP_SET_WARNINGS_ON'::kmp_set_warnings_on
611!dec$ attributes alias:'_KMP_SET_WARNINGS_OFF'::kmp_set_warnings_off
612
613!dec$ attributes alias:'_KMP_GET_CANCELLATION_STATUS' :: kmp_get_cancellation_status
614
615!dec$   endif
616!dec$ endif
617
618!dec$ if defined(__linux)
619
620!***
621!*** The Linux* OS entry points are in lowercase, with an underscore appended.
622!***
623
624!dec$ attributes alias:'omp_set_num_threads_'::omp_set_num_threads
625!dec$ attributes alias:'omp_set_dynamic_'::omp_set_dynamic
626!dec$ attributes alias:'omp_set_nested_'::omp_set_nested
627!dec$ attributes alias:'omp_get_num_threads_'::omp_get_num_threads
628!dec$ attributes alias:'omp_get_max_threads_'::omp_get_max_threads
629!dec$ attributes alias:'omp_get_thread_num_'::omp_get_thread_num
630!dec$ attributes alias:'omp_get_num_procs_'::omp_get_num_procs
631!dec$ attributes alias:'omp_in_parallel_'::omp_in_parallel
632!dec$ attributes alias:'omp_get_dynamic_'::omp_get_dynamic
633!dec$ attributes alias:'omp_get_nested_'::omp_get_nested
634!dec$ attributes alias:'omp_get_thread_limit_'::omp_get_thread_limit
635!dec$ attributes alias:'omp_set_max_active_levels_'::omp_set_max_active_levels
636!dec$ attributes alias:'omp_get_max_active_levels_'::omp_get_max_active_levels
637!dec$ attributes alias:'omp_get_level_'::omp_get_level
638!dec$ attributes alias:'omp_get_active_level_'::omp_get_active_level
639!dec$ attributes alias:'omp_get_ancestor_thread_num_'::omp_get_ancestor_thread_num
640!dec$ attributes alias:'omp_get_team_size_'::omp_get_team_size
641!dec$ attributes alias:'omp_set_schedule_'::omp_set_schedule
642!dec$ attributes alias:'omp_get_schedule_'::omp_get_schedule
643!dec$ attributes alias:'omp_get_proc_bind_' :: omp_get_proc_bind
644!dec$ attributes alias:'omp_get_wtime_'::omp_get_wtime
645!dec$ attributes alias:'omp_get_wtick_'::omp_get_wtick
646!dec$ attributes alias:'omp_get_default_device_'::omp_get_default_device
647!dec$ attributes alias:'omp_set_default_device_'::omp_set_default_device
648!dec$ attributes alias:'omp_get_num_devices_'::omp_get_num_devices
649!dec$ attributes alias:'omp_get_num_teams_'::omp_get_num_teams
650!dec$ attributes alias:'omp_get_team_num_'::omp_get_team_num
651!dec$ attributes alias:'omp_get_cancellation_'::omp_get_cancellation
652!dec$ attributes alias:'omp_is_initial_device_'::omp_is_initial_device
653
654!dec$ attributes alias:'omp_init_lock_'::omp_init_lock
655!dec$ attributes alias:'omp_destroy_lock_'::omp_destroy_lock
656!dec$ attributes alias:'omp_set_lock_'::omp_set_lock
657!dec$ attributes alias:'omp_unset_lock_'::omp_unset_lock
658!dec$ attributes alias:'omp_test_lock_'::omp_test_lock
659!dec$ attributes alias:'omp_init_nest_lock_'::omp_init_nest_lock
660!dec$ attributes alias:'omp_destroy_nest_lock_'::omp_destroy_nest_lock
661!dec$ attributes alias:'omp_set_nest_lock_'::omp_set_nest_lock
662!dec$ attributes alias:'omp_unset_nest_lock_'::omp_unset_nest_lock
663!dec$ attributes alias:'omp_test_nest_lock_'::omp_test_nest_lock
664
665!dec$ attributes alias:'kmp_set_stacksize_'::kmp_set_stacksize
666!dec$ attributes alias:'kmp_set_stacksize_s_'::kmp_set_stacksize_s
667!dec$ attributes alias:'kmp_set_blocktime_'::kmp_set_blocktime
668!dec$ attributes alias:'kmp_set_library_serial_'::kmp_set_library_serial
669!dec$ attributes alias:'kmp_set_library_turnaround_'::kmp_set_library_turnaround
670!dec$ attributes alias:'kmp_set_library_throughput_'::kmp_set_library_throughput
671!dec$ attributes alias:'kmp_set_library_'::kmp_set_library
672!dec$ attributes alias:'kmp_get_stacksize_'::kmp_get_stacksize
673!dec$ attributes alias:'kmp_get_stacksize_s_'::kmp_get_stacksize_s
674!dec$ attributes alias:'kmp_get_blocktime_'::kmp_get_blocktime
675!dec$ attributes alias:'kmp_get_library_'::kmp_get_library
676!dec$ attributes alias:'kmp_set_affinity_'::kmp_set_affinity
677!dec$ attributes alias:'kmp_get_affinity_'::kmp_get_affinity
678!dec$ attributes alias:'kmp_get_affinity_max_proc_'::kmp_get_affinity_max_proc
679!dec$ attributes alias:'kmp_create_affinity_mask_'::kmp_create_affinity_mask
680!dec$ attributes alias:'kmp_destroy_affinity_mask_'::kmp_destroy_affinity_mask
681!dec$ attributes alias:'kmp_set_affinity_mask_proc_'::kmp_set_affinity_mask_proc
682!dec$ attributes alias:'kmp_unset_affinity_mask_proc_'::kmp_unset_affinity_mask_proc
683!dec$ attributes alias:'kmp_get_affinity_mask_proc_'::kmp_get_affinity_mask_proc
684!dec$ attributes alias:'kmp_malloc_'::kmp_malloc
685!dec$ attributes alias:'kmp_aligned_malloc_'::kmp_aligned_malloc
686!dec$ attributes alias:'kmp_calloc_'::kmp_calloc
687!dec$ attributes alias:'kmp_realloc_'::kmp_realloc
688!dec$ attributes alias:'kmp_free_'::kmp_free
689
690!dec$ attributes alias:'kmp_set_warnings_on_'::kmp_set_warnings_on
691!dec$ attributes alias:'kmp_set_warnings_off_'::kmp_set_warnings_off
692!dec$ attributes alias:'kmp_get_cancellation_status_'::kmp_get_cancellation_status
693
694!dec$ endif
695
696!dec$ if defined(__APPLE__)
697
698!***
699!*** The Mac entry points are in lowercase, with an both an underscore
700!*** appended and an underscore prepended.
701!***
702
703!dec$ attributes alias:'_omp_set_num_threads_'::omp_set_num_threads
704!dec$ attributes alias:'_omp_set_dynamic_'::omp_set_dynamic
705!dec$ attributes alias:'_omp_set_nested_'::omp_set_nested
706!dec$ attributes alias:'_omp_get_num_threads_'::omp_get_num_threads
707!dec$ attributes alias:'_omp_get_max_threads_'::omp_get_max_threads
708!dec$ attributes alias:'_omp_get_thread_num_'::omp_get_thread_num
709!dec$ attributes alias:'_omp_get_num_procs_'::omp_get_num_procs
710!dec$ attributes alias:'_omp_in_parallel_'::omp_in_parallel
711!dec$ attributes alias:'_omp_get_dynamic_'::omp_get_dynamic
712!dec$ attributes alias:'_omp_get_nested_'::omp_get_nested
713!dec$ attributes alias:'_omp_get_thread_limit_'::omp_get_thread_limit
714!dec$ attributes alias:'_omp_set_max_active_levels_'::omp_set_max_active_levels
715!dec$ attributes alias:'_omp_get_max_active_levels_'::omp_get_max_active_levels
716!dec$ attributes alias:'_omp_get_level_'::omp_get_level
717!dec$ attributes alias:'_omp_get_active_level_'::omp_get_active_level
718!dec$ attributes alias:'_omp_get_ancestor_thread_num_'::omp_get_ancestor_thread_num
719!dec$ attributes alias:'_omp_get_team_size_'::omp_get_team_size
720!dec$ attributes alias:'_omp_set_schedule_'::omp_set_schedule
721!dec$ attributes alias:'_omp_get_schedule_'::omp_get_schedule
722!dec$ attributes alias:'_omp_get_proc_bind_' :: omp_get_proc_bind
723!dec$ attributes alias:'_omp_get_wtime_'::omp_get_wtime
724!dec$ attributes alias:'_omp_get_wtick_'::omp_get_wtick
725!dec$ attributes alias:'_omp_get_num_teams_'::omp_get_num_teams
726!dec$ attributes alias:'_omp_get_team_num_'::omp_get_team_num
727!dec$ attributes alias:'_omp_get_cancellation_'::omp_get_cancellation
728!dec$ attributes alias:'_omp_is_initial_device_'::omp_is_initial_device
729
730!dec$ attributes alias:'_omp_init_lock_'::omp_init_lock
731!dec$ attributes alias:'_omp_destroy_lock_'::omp_destroy_lock
732!dec$ attributes alias:'_omp_set_lock_'::omp_set_lock
733!dec$ attributes alias:'_omp_unset_lock_'::omp_unset_lock
734!dec$ attributes alias:'_omp_test_lock_'::omp_test_lock
735!dec$ attributes alias:'_omp_init_nest_lock_'::omp_init_nest_lock
736!dec$ attributes alias:'_omp_destroy_nest_lock_'::omp_destroy_nest_lock
737!dec$ attributes alias:'_omp_set_nest_lock_'::omp_set_nest_lock
738!dec$ attributes alias:'_omp_unset_nest_lock_'::omp_unset_nest_lock
739!dec$ attributes alias:'_omp_test_nest_lock_'::omp_test_nest_lock
740
741!dec$ attributes alias:'_kmp_set_stacksize_'::kmp_set_stacksize
742!dec$ attributes alias:'_kmp_set_stacksize_s_'::kmp_set_stacksize_s
743!dec$ attributes alias:'_kmp_set_blocktime_'::kmp_set_blocktime
744!dec$ attributes alias:'_kmp_set_library_serial_'::kmp_set_library_serial
745!dec$ attributes alias:'_kmp_set_library_turnaround_'::kmp_set_library_turnaround
746!dec$ attributes alias:'_kmp_set_library_throughput_'::kmp_set_library_throughput
747!dec$ attributes alias:'_kmp_set_library_'::kmp_set_library
748!dec$ attributes alias:'_kmp_get_stacksize_'::kmp_get_stacksize
749!dec$ attributes alias:'_kmp_get_stacksize_s_'::kmp_get_stacksize_s
750!dec$ attributes alias:'_kmp_get_blocktime_'::kmp_get_blocktime
751!dec$ attributes alias:'_kmp_get_library_'::kmp_get_library
752!dec$ attributes alias:'_kmp_set_affinity_'::kmp_set_affinity
753!dec$ attributes alias:'_kmp_get_affinity_'::kmp_get_affinity
754!dec$ attributes alias:'_kmp_get_affinity_max_proc_'::kmp_get_affinity_max_proc
755!dec$ attributes alias:'_kmp_create_affinity_mask_'::kmp_create_affinity_mask
756!dec$ attributes alias:'_kmp_destroy_affinity_mask_'::kmp_destroy_affinity_mask
757!dec$ attributes alias:'_kmp_set_affinity_mask_proc_'::kmp_set_affinity_mask_proc
758!dec$ attributes alias:'_kmp_unset_affinity_mask_proc_'::kmp_unset_affinity_mask_proc
759!dec$ attributes alias:'_kmp_get_affinity_mask_proc_'::kmp_get_affinity_mask_proc
760!dec$ attributes alias:'_kmp_malloc_'::kmp_malloc
761!dec$ attributes alias:'_kmp_aligned_malloc_'::kmp_aligned_malloc
762!dec$ attributes alias:'_kmp_calloc_'::kmp_calloc
763!dec$ attributes alias:'_kmp_realloc_'::kmp_realloc
764!dec$ attributes alias:'_kmp_free_'::kmp_free
765
766!dec$ attributes alias:'_kmp_set_warnings_on_'::kmp_set_warnings_on
767!dec$ attributes alias:'_kmp_set_warnings_off_'::kmp_set_warnings_off
768
769!dec$ attributes alias:'_kmp_get_cancellation_status_'::kmp_get_cancellation_status
770
771!dec$ endif
772
773      end module omp_lib
774
775