Intel® OpenMP* Runtime Library
Main Page
Modules
Classes
All
Classes
Functions
Variables
Typedefs
Enumerations
Enumerator
Modules
Pages
src
kmp_ftn_os.h
1
/*
2
* kmp_ftn_os.h -- KPTS Fortran defines header file.
3
* $Revision: 43354 $
4
* $Date: 2014-07-22 17:15:02 -0500 (Tue, 22 Jul 2014) $
5
*/
6
7
/* <copyright>
8
Copyright (c) 1997-2014 Intel Corporation. All Rights Reserved.
9
10
Redistribution and use in source and binary forms, with or without
11
modification, are permitted provided that the following conditions
12
are met:
13
14
* Redistributions of source code must retain the above copyright
15
notice, this list of conditions and the following disclaimer.
16
* Redistributions in binary form must reproduce the above copyright
17
notice, this list of conditions and the following disclaimer in the
18
documentation and/or other materials provided with the distribution.
19
* Neither the name of Intel Corporation nor the names of its
20
contributors may be used to endorse or promote products derived
21
from this software without specific prior written permission.
22
23
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
26
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
27
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
29
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
33
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34
35
</copyright> */
36
37
#ifndef KMP_FTN_OS_H
38
#define KMP_FTN_OS_H
39
40
// KMP_FNT_ENTRIES may be one of: KMP_FTN_PLAIN, KMP_FTN_UPPER, KMP_FTN_APPEND, KMP_FTN_UAPPEND.
41
42
43
/* -------------------------- External definitions ------------------------ */
44
45
#if KMP_FTN_ENTRIES == KMP_FTN_PLAIN
46
47
#define FTN_SET_STACKSIZE kmp_set_stacksize
48
#define FTN_SET_STACKSIZE_S kmp_set_stacksize_s
49
#define FTN_GET_STACKSIZE kmp_get_stacksize
50
#define FTN_GET_STACKSIZE_S kmp_get_stacksize_s
51
#define FTN_SET_BLOCKTIME kmp_set_blocktime
52
#define FTN_GET_BLOCKTIME kmp_get_blocktime
53
#define FTN_SET_LIBRARY_SERIAL kmp_set_library_serial
54
#define FTN_SET_LIBRARY_TURNAROUND kmp_set_library_turnaround
55
#define FTN_SET_LIBRARY_THROUGHPUT kmp_set_library_throughput
56
#define FTN_SET_LIBRARY kmp_set_library
57
#define FTN_GET_LIBRARY kmp_get_library
58
#define FTN_SET_DEFAULTS kmp_set_defaults
59
#define FTN_SET_AFFINITY kmp_set_affinity
60
#define FTN_GET_AFFINITY kmp_get_affinity
61
#define FTN_GET_AFFINITY_MAX_PROC kmp_get_affinity_max_proc
62
#define FTN_CREATE_AFFINITY_MASK kmp_create_affinity_mask
63
#define FTN_DESTROY_AFFINITY_MASK kmp_destroy_affinity_mask
64
#define FTN_SET_AFFINITY_MASK_PROC kmp_set_affinity_mask_proc
65
#define FTN_UNSET_AFFINITY_MASK_PROC kmp_unset_affinity_mask_proc
66
#define FTN_GET_AFFINITY_MASK_PROC kmp_get_affinity_mask_proc
67
68
#define FTN_MALLOC kmp_malloc
69
#define FTN_CALLOC kmp_calloc
70
#define FTN_REALLOC kmp_realloc
71
#define FTN_FREE kmp_free
72
73
#define FTN_GET_NUM_KNOWN_THREADS kmp_get_num_known_threads
74
75
#define FTN_SET_NUM_THREADS omp_set_num_threads
76
#define FTN_GET_NUM_THREADS omp_get_num_threads
77
#define FTN_GET_MAX_THREADS omp_get_max_threads
78
#define FTN_GET_THREAD_NUM omp_get_thread_num
79
#define FTN_GET_NUM_PROCS omp_get_num_procs
80
#define FTN_SET_DYNAMIC omp_set_dynamic
81
#define FTN_GET_DYNAMIC omp_get_dynamic
82
#define FTN_SET_NESTED omp_set_nested
83
#define FTN_GET_NESTED omp_get_nested
84
#define FTN_IN_PARALLEL omp_in_parallel
85
#define FTN_GET_THREAD_LIMIT omp_get_thread_limit
86
#define FTN_SET_SCHEDULE omp_set_schedule
87
#define FTN_GET_SCHEDULE omp_get_schedule
88
#define FTN_SET_MAX_ACTIVE_LEVELS omp_set_max_active_levels
89
#define FTN_GET_MAX_ACTIVE_LEVELS omp_get_max_active_levels
90
#define FTN_GET_ACTIVE_LEVEL omp_get_active_level
91
#define FTN_GET_LEVEL omp_get_level
92
#define FTN_GET_ANCESTOR_THREAD_NUM omp_get_ancestor_thread_num
93
#define FTN_GET_TEAM_SIZE omp_get_team_size
94
#define FTN_IN_FINAL omp_in_final
95
// #define FTN_SET_PROC_BIND omp_set_proc_bind
96
#define FTN_GET_PROC_BIND omp_get_proc_bind
97
// #define FTN_CURR_PROC_BIND omp_curr_proc_bind
98
#if OMP_40_ENABLED
99
#define FTN_GET_NUM_TEAMS omp_get_num_teams
100
#define FTN_GET_TEAM_NUM omp_get_team_num
101
#endif
102
#define FTN_INIT_LOCK omp_init_lock
103
#define FTN_DESTROY_LOCK omp_destroy_lock
104
#define FTN_SET_LOCK omp_set_lock
105
#define FTN_UNSET_LOCK omp_unset_lock
106
#define FTN_TEST_LOCK omp_test_lock
107
#define FTN_INIT_NEST_LOCK omp_init_nest_lock
108
#define FTN_DESTROY_NEST_LOCK omp_destroy_nest_lock
109
#define FTN_SET_NEST_LOCK omp_set_nest_lock
110
#define FTN_UNSET_NEST_LOCK omp_unset_nest_lock
111
#define FTN_TEST_NEST_LOCK omp_test_nest_lock
112
113
#define FTN_SET_WARNINGS_ON kmp_set_warnings_on
114
#define FTN_SET_WARNINGS_OFF kmp_set_warnings_off
115
116
#define FTN_GET_WTIME omp_get_wtime
117
#define FTN_GET_WTICK omp_get_wtick
118
119
#if OMP_40_ENABLED
120
#if KMP_MIC || KMP_OS_DARWIN
121
#define FTN_GET_DEFAULT_DEVICE omp_get_default_device
122
#define FTN_SET_DEFAULT_DEVICE omp_set_default_device
123
#define FTN_GET_NUM_DEVICES omp_get_num_devices
124
#endif
125
#endif
126
127
#if OMP_40_ENABLED
128
#define FTN_GET_CANCELLATION omp_get_cancellation
129
#define FTN_GET_CANCELLATION_STATUS kmp_get_cancellation_status
130
#endif
131
132
#endif
/* KMP_FTN_PLAIN */
133
134
/* ------------------------------------------------------------------------ */
135
136
#if KMP_FTN_ENTRIES == KMP_FTN_APPEND
137
138
#define FTN_SET_STACKSIZE kmp_set_stacksize_
139
#define FTN_SET_STACKSIZE_S kmp_set_stacksize_s_
140
#define FTN_GET_STACKSIZE kmp_get_stacksize_
141
#define FTN_GET_STACKSIZE_S kmp_get_stacksize_s_
142
#define FTN_SET_BLOCKTIME kmp_set_blocktime_
143
#define FTN_GET_BLOCKTIME kmp_get_blocktime_
144
#define FTN_SET_LIBRARY_SERIAL kmp_set_library_serial_
145
#define FTN_SET_LIBRARY_TURNAROUND kmp_set_library_turnaround_
146
#define FTN_SET_LIBRARY_THROUGHPUT kmp_set_library_throughput_
147
#define FTN_SET_LIBRARY kmp_set_library_
148
#define FTN_GET_LIBRARY kmp_get_library_
149
#define FTN_SET_DEFAULTS kmp_set_defaults_
150
#define FTN_SET_AFFINITY kmp_set_affinity_
151
#define FTN_GET_AFFINITY kmp_get_affinity_
152
#define FTN_GET_AFFINITY_MAX_PROC kmp_get_affinity_max_proc_
153
#define FTN_CREATE_AFFINITY_MASK kmp_create_affinity_mask_
154
#define FTN_DESTROY_AFFINITY_MASK kmp_destroy_affinity_mask_
155
#define FTN_SET_AFFINITY_MASK_PROC kmp_set_affinity_mask_proc_
156
#define FTN_UNSET_AFFINITY_MASK_PROC kmp_unset_affinity_mask_proc_
157
#define FTN_GET_AFFINITY_MASK_PROC kmp_get_affinity_mask_proc_
158
159
#define FTN_MALLOC kmp_malloc_
160
#define FTN_CALLOC kmp_calloc_
161
#define FTN_REALLOC kmp_realloc_
162
#define FTN_FREE kmp_free_
163
164
#define FTN_GET_NUM_KNOWN_THREADS kmp_get_num_known_threads_
165
166
#define FTN_SET_NUM_THREADS omp_set_num_threads_
167
#define FTN_GET_NUM_THREADS omp_get_num_threads_
168
#define FTN_GET_MAX_THREADS omp_get_max_threads_
169
#define FTN_GET_THREAD_NUM omp_get_thread_num_
170
#define FTN_GET_NUM_PROCS omp_get_num_procs_
171
#define FTN_SET_DYNAMIC omp_set_dynamic_
172
#define FTN_GET_DYNAMIC omp_get_dynamic_
173
#define FTN_SET_NESTED omp_set_nested_
174
#define FTN_GET_NESTED omp_get_nested_
175
#define FTN_IN_PARALLEL omp_in_parallel_
176
#define FTN_GET_THREAD_LIMIT omp_get_thread_limit_
177
#define FTN_SET_SCHEDULE omp_set_schedule_
178
#define FTN_GET_SCHEDULE omp_get_schedule_
179
#define FTN_SET_MAX_ACTIVE_LEVELS omp_set_max_active_levels_
180
#define FTN_GET_MAX_ACTIVE_LEVELS omp_get_max_active_levels_
181
#define FTN_GET_ACTIVE_LEVEL omp_get_active_level_
182
#define FTN_GET_LEVEL omp_get_level_
183
#define FTN_GET_ANCESTOR_THREAD_NUM omp_get_ancestor_thread_num_
184
#define FTN_GET_TEAM_SIZE omp_get_team_size_
185
#define FTN_IN_FINAL omp_in_final_
186
// #define FTN_SET_PROC_BIND omp_set_proc_bind_
187
#define FTN_GET_PROC_BIND omp_get_proc_bind_
188
// #define FTN_CURR_PROC_BIND omp_curr_proc_bind_
189
#if OMP_40_ENABLED
190
#define FTN_GET_NUM_TEAMS omp_get_num_teams_
191
#define FTN_GET_TEAM_NUM omp_get_team_num_
192
#endif
193
#define FTN_INIT_LOCK omp_init_lock_
194
#define FTN_DESTROY_LOCK omp_destroy_lock_
195
#define FTN_SET_LOCK omp_set_lock_
196
#define FTN_UNSET_LOCK omp_unset_lock_
197
#define FTN_TEST_LOCK omp_test_lock_
198
#define FTN_INIT_NEST_LOCK omp_init_nest_lock_
199
#define FTN_DESTROY_NEST_LOCK omp_destroy_nest_lock_
200
#define FTN_SET_NEST_LOCK omp_set_nest_lock_
201
#define FTN_UNSET_NEST_LOCK omp_unset_nest_lock_
202
#define FTN_TEST_NEST_LOCK omp_test_nest_lock_
203
204
#define FTN_SET_WARNINGS_ON kmp_set_warnings_on_
205
#define FTN_SET_WARNINGS_OFF kmp_set_warnings_off_
206
207
#define FTN_GET_WTIME omp_get_wtime_
208
#define FTN_GET_WTICK omp_get_wtick_
209
210
#if OMP_40_ENABLED
211
#if KMP_MIC || KMP_OS_DARWIN
212
#define FTN_GET_DEFAULT_DEVICE omp_get_default_device_
213
#define FTN_SET_DEFAULT_DEVICE omp_set_default_device_
214
#define FTN_GET_NUM_DEVICES omp_get_num_devices_
215
#endif
216
#endif
217
218
219
#if OMP_40_ENABLED
220
#define FTN_GET_CANCELLATION omp_get_cancellation_
221
#define FTN_GET_CANCELLATION_STATUS kmp_get_cancellation_status_
222
#endif
223
224
#endif
/* KMP_FTN_APPEND */
225
226
/* ------------------------------------------------------------------------ */
227
228
#if KMP_FTN_ENTRIES == KMP_FTN_UPPER
229
230
#define FTN_SET_STACKSIZE KMP_SET_STACKSIZE
231
#define FTN_SET_STACKSIZE_S KMP_SET_STACKSIZE_S
232
#define FTN_GET_STACKSIZE KMP_GET_STACKSIZE
233
#define FTN_GET_STACKSIZE_S KMP_GET_STACKSIZE_S
234
#define FTN_SET_BLOCKTIME KMP_SET_BLOCKTIME
235
#define FTN_GET_BLOCKTIME KMP_GET_BLOCKTIME
236
#define FTN_SET_LIBRARY_SERIAL KMP_SET_LIBRARY_SERIAL
237
#define FTN_SET_LIBRARY_TURNAROUND KMP_SET_LIBRARY_TURNAROUND
238
#define FTN_SET_LIBRARY_THROUGHPUT KMP_SET_LIBRARY_THROUGHPUT
239
#define FTN_SET_LIBRARY KMP_SET_LIBRARY
240
#define FTN_GET_LIBRARY KMP_GET_LIBRARY
241
#define FTN_SET_DEFAULTS KMP_SET_DEFAULTS
242
#define FTN_SET_AFFINITY KMP_SET_AFFINITY
243
#define FTN_GET_AFFINITY KMP_GET_AFFINITY
244
#define FTN_GET_AFFINITY_MAX_PROC KMP_GET_AFFINITY_MAX_PROC
245
#define FTN_CREATE_AFFINITY_MASK KMP_CREATE_AFFINITY_MASK
246
#define FTN_DESTROY_AFFINITY_MASK KMP_DESTROY_AFFINITY_MASK
247
#define FTN_SET_AFFINITY_MASK_PROC KMP_SET_AFFINITY_MASK_PROC
248
#define FTN_UNSET_AFFINITY_MASK_PROC KMP_UNSET_AFFINITY_MASK_PROC
249
#define FTN_GET_AFFINITY_MASK_PROC KMP_GET_AFFINITY_MASK_PROC
250
251
#define FTN_MALLOC KMP_MALLOC
252
#define FTN_CALLOC KMP_CALLOC
253
#define FTN_REALLOC KMP_REALLOC
254
#define FTN_FREE KMP_FREE
255
256
#define FTN_GET_NUM_KNOWN_THREADS KMP_GET_NUM_KNOWN_THREADS
257
258
#define FTN_SET_NUM_THREADS OMP_SET_NUM_THREADS
259
#define FTN_GET_NUM_THREADS OMP_GET_NUM_THREADS
260
#define FTN_GET_MAX_THREADS OMP_GET_MAX_THREADS
261
#define FTN_GET_THREAD_NUM OMP_GET_THREAD_NUM
262
#define FTN_GET_NUM_PROCS OMP_GET_NUM_PROCS
263
#define FTN_SET_DYNAMIC OMP_SET_DYNAMIC
264
#define FTN_GET_DYNAMIC OMP_GET_DYNAMIC
265
#define FTN_SET_NESTED OMP_SET_NESTED
266
#define FTN_GET_NESTED OMP_GET_NESTED
267
#define FTN_IN_PARALLEL OMP_IN_PARALLEL
268
#define FTN_GET_THREAD_LIMIT OMP_GET_THREAD_LIMIT
269
#define FTN_SET_SCHEDULE OMP_SET_SCHEDULE
270
#define FTN_GET_SCHEDULE OMP_GET_SCHEDULE
271
#define FTN_SET_MAX_ACTIVE_LEVELS OMP_SET_MAX_ACTIVE_LEVELS
272
#define FTN_GET_MAX_ACTIVE_LEVELS OMP_GET_MAX_ACTIVE_LEVELS
273
#define FTN_GET_ACTIVE_LEVEL OMP_GET_ACTIVE_LEVEL
274
#define FTN_GET_LEVEL OMP_GET_LEVEL
275
#define FTN_GET_ANCESTOR_THREAD_NUM OMP_GET_ANCESTOR_THREAD_NUM
276
#define FTN_GET_TEAM_SIZE OMP_GET_TEAM_SIZE
277
#define FTN_IN_FINAL OMP_IN_FINAL
278
// #define FTN_SET_PROC_BIND OMP_SET_PROC_BIND
279
#define FTN_GET_PROC_BIND OMP_GET_PROC_BIND
280
// #define FTN_CURR_PROC_BIND OMP_CURR_PROC_BIND
281
#if OMP_40_ENABLED
282
#define FTN_GET_NUM_TEAMS OMP_GET_NUM_TEAMS
283
#define FTN_GET_TEAM_NUM OMP_GET_TEAM_NUM
284
#endif
285
#define FTN_INIT_LOCK OMP_INIT_LOCK
286
#define FTN_DESTROY_LOCK OMP_DESTROY_LOCK
287
#define FTN_SET_LOCK OMP_SET_LOCK
288
#define FTN_UNSET_LOCK OMP_UNSET_LOCK
289
#define FTN_TEST_LOCK OMP_TEST_LOCK
290
#define FTN_INIT_NEST_LOCK OMP_INIT_NEST_LOCK
291
#define FTN_DESTROY_NEST_LOCK OMP_DESTROY_NEST_LOCK
292
#define FTN_SET_NEST_LOCK OMP_SET_NEST_LOCK
293
#define FTN_UNSET_NEST_LOCK OMP_UNSET_NEST_LOCK
294
#define FTN_TEST_NEST_LOCK OMP_TEST_NEST_LOCK
295
296
#define FTN_SET_WARNINGS_ON KMP_SET_WARNINGS_ON
297
#define FTN_SET_WARNINGS_OFF KMP_SET_WARNINGS_OFF
298
299
#define FTN_GET_WTIME OMP_GET_WTIME
300
#define FTN_GET_WTICK OMP_GET_WTICK
301
302
#if OMP_40_ENABLED
303
#if KMP_MIC || KMP_OS_DARWIN
304
#define FTN_GET_DEFAULT_DEVICE OMP_GET_DEFAULT_DEVICE
305
#define FTN_SET_DEFAULT_DEVICE OMP_SET_DEFAULT_DEVICE
306
#define FTN_GET_NUM_DEVICES OMP_GET_NUM_DEVICES
307
#endif
308
#endif
309
310
311
#if OMP_40_ENABLED
312
#define FTN_GET_CANCELLATION OMP_GET_CANCELLATION
313
#define FTN_GET_CANCELLATION_STATUS KMP_GET_CANCELLATION_STATUS
314
#endif
315
316
#endif
/* KMP_FTN_UPPER */
317
318
/* ------------------------------------------------------------------------ */
319
320
#if KMP_FTN_ENTRIES == KMP_FTN_UAPPEND
321
322
#define FTN_SET_STACKSIZE KMP_SET_STACKSIZE_
323
#define FTN_SET_STACKSIZE_S KMP_SET_STACKSIZE_S_
324
#define FTN_GET_STACKSIZE KMP_GET_STACKSIZE_
325
#define FTN_GET_STACKSIZE_S KMP_GET_STACKSIZE_S_
326
#define FTN_SET_BLOCKTIME KMP_SET_BLOCKTIME_
327
#define FTN_GET_BLOCKTIME KMP_GET_BLOCKTIME_
328
#define FTN_SET_LIBRARY_SERIAL KMP_SET_LIBRARY_SERIAL_
329
#define FTN_SET_LIBRARY_TURNAROUND KMP_SET_LIBRARY_TURNAROUND_
330
#define FTN_SET_LIBRARY_THROUGHPUT KMP_SET_LIBRARY_THROUGHPUT_
331
#define FTN_SET_LIBRARY KMP_SET_LIBRARY_
332
#define FTN_GET_LIBRARY KMP_GET_LIBRARY_
333
#define FTN_SET_DEFAULTS KMP_SET_DEFAULTS_
334
#define FTN_SET_AFFINITY KMP_SET_AFFINITY_
335
#define FTN_GET_AFFINITY KMP_GET_AFFINITY_
336
#define FTN_GET_AFFINITY_MAX_PROC KMP_GET_AFFINITY_MAX_PROC_
337
#define FTN_CREATE_AFFINITY_MASK KMP_CREATE_AFFINITY_MASK_
338
#define FTN_DESTROY_AFFINITY_MASK KMP_DESTROY_AFFINITY_MASK_
339
#define FTN_SET_AFFINITY_MASK_PROC KMP_SET_AFFINITY_MASK_PROC_
340
#define FTN_UNSET_AFFINITY_MASK_PROC KMP_UNSET_AFFINITY_MASK_PROC_
341
#define FTN_GET_AFFINITY_MASK_PROC KMP_GET_AFFINITY_MASK_PROC_
342
343
#define FTN_MALLOC KMP_MALLOC_
344
#define FTN_CALLOC KMP_CALLOC_
345
#define FTN_REALLOC KMP_REALLOC_
346
#define FTN_FREE KMP_FREE_
347
348
#define FTN_GET_NUM_KNOWN_THREADS KMP_GET_NUM_KNOWN_THREADS_
349
350
#define FTN_SET_NUM_THREADS OMP_SET_NUM_THREADS_
351
#define FTN_GET_NUM_THREADS OMP_GET_NUM_THREADS_
352
#define FTN_GET_MAX_THREADS OMP_GET_MAX_THREADS_
353
#define FTN_GET_THREAD_NUM OMP_GET_THREAD_NUM_
354
#define FTN_GET_NUM_PROCS OMP_GET_NUM_PROCS_
355
#define FTN_SET_DYNAMIC OMP_SET_DYNAMIC_
356
#define FTN_GET_DYNAMIC OMP_GET_DYNAMIC_
357
#define FTN_SET_NESTED OMP_SET_NESTED_
358
#define FTN_GET_NESTED OMP_GET_NESTED_
359
#define FTN_IN_PARALLEL OMP_IN_PARALLEL_
360
#define FTN_GET_THREAD_LIMIT OMP_GET_THREAD_LIMIT_
361
#define FTN_SET_SCHEDULE OMP_SET_SCHEDULE_
362
#define FTN_GET_SCHEDULE OMP_GET_SCHEDULE_
363
#define FTN_SET_MAX_ACTIVE_LEVELS OMP_SET_MAX_ACTIVE_LEVELS_
364
#define FTN_GET_MAX_ACTIVE_LEVELS OMP_GET_MAX_ACTIVE_LEVELS_
365
#define FTN_GET_ACTIVE_LEVEL OMP_GET_ACTIVE_LEVEL_
366
#define FTN_GET_LEVEL OMP_GET_LEVEL_
367
#define FTN_GET_ANCESTOR_THREAD_NUM OMP_GET_ANCESTOR_THREAD_NUM_
368
#define FTN_GET_TEAM_SIZE OMP_GET_TEAM_SIZE_
369
#define FTN_IN_FINAL OMP_IN_FINAL_
370
// #define FTN_SET_PROC_BIND OMP_SET_PROC_BIND_
371
#define FTN_GET_PROC_BIND OMP_GET_PROC_BIND_
372
// #define FTN_CURR_PROC_BIND OMP_CURR_PROC_BIND_
373
#if OMP_40_ENABLED
374
#define FTN_GET_NUM_TEAMS OMP_GET_NUM_TEAMS_
375
#define FTN_GET_TEAM_NUM OMP_GET_TEAM_NUM_
376
#endif
377
#define FTN_INIT_LOCK OMP_INIT_LOCK_
378
#define FTN_DESTROY_LOCK OMP_DESTROY_LOCK_
379
#define FTN_SET_LOCK OMP_SET_LOCK_
380
#define FTN_UNSET_LOCK OMP_UNSET_LOCK_
381
#define FTN_TEST_LOCK OMP_TEST_LOCK_
382
#define FTN_INIT_NEST_LOCK OMP_INIT_NEST_LOCK_
383
#define FTN_DESTROY_NEST_LOCK OMP_DESTROY_NEST_LOCK_
384
#define FTN_SET_NEST_LOCK OMP_SET_NEST_LOCK_
385
#define FTN_UNSET_NEST_LOCK OMP_UNSET_NEST_LOCK_
386
#define FTN_TEST_NEST_LOCK OMP_TEST_NEST_LOCK_
387
388
#define FTN_SET_WARNINGS_ON KMP_SET_WARNINGS_ON_
389
#define FTN_SET_WARNINGS_OFF KMP_SET_WARNINGS_OFF_
390
391
#define FTN_GET_WTIME OMP_GET_WTIME_
392
#define FTN_GET_WTICK OMP_GET_WTICK_
393
394
#if OMP_40_ENABLED
395
#if KMP_MIC || KMP_OS_DARWIN
396
#define FTN_GET_DEFAULT_DEVICE OMP_GET_DEFAULT_DEVICE_
397
#define FTN_SET_DEFAULT_DEVICE OMP_SET_DEFAULT_DEVICE_
398
#define FTN_GET_NUM_DEVICES OMP_GET_NUM_DEVICES_
399
#endif
400
#endif
401
402
403
#if OMP_40_ENABLED
404
#define FTN_GET_CANCELLATION OMP_GET_CANCELLATION_
405
#define FTN_GET_CANCELLATION_STATUS KMP_GET_CANCELLATION_STATUS_
406
#endif
407
408
#endif
/* KMP_FTN_UAPPEND */
409
410
/* ------------------------------------------------------------------ */
411
/* -------------------------- GOMP API NAMES ------------------------ */
412
// All GOMP_1.0 symbols
413
#define KMP_API_NAME_GOMP_ATOMIC_END GOMP_atomic_end
414
#define KMP_API_NAME_GOMP_ATOMIC_START GOMP_atomic_start
415
#define KMP_API_NAME_GOMP_BARRIER GOMP_barrier
416
#define KMP_API_NAME_GOMP_CRITICAL_END GOMP_critical_end
417
#define KMP_API_NAME_GOMP_CRITICAL_NAME_END GOMP_critical_name_end
418
#define KMP_API_NAME_GOMP_CRITICAL_NAME_START GOMP_critical_name_start
419
#define KMP_API_NAME_GOMP_CRITICAL_START GOMP_critical_start
420
#define KMP_API_NAME_GOMP_LOOP_DYNAMIC_NEXT GOMP_loop_dynamic_next
421
#define KMP_API_NAME_GOMP_LOOP_DYNAMIC_START GOMP_loop_dynamic_start
422
#define KMP_API_NAME_GOMP_LOOP_END GOMP_loop_end
423
#define KMP_API_NAME_GOMP_LOOP_END_NOWAIT GOMP_loop_end_nowait
424
#define KMP_API_NAME_GOMP_LOOP_GUIDED_NEXT GOMP_loop_guided_next
425
#define KMP_API_NAME_GOMP_LOOP_GUIDED_START GOMP_loop_guided_start
426
#define KMP_API_NAME_GOMP_LOOP_ORDERED_DYNAMIC_NEXT GOMP_loop_ordered_dynamic_next
427
#define KMP_API_NAME_GOMP_LOOP_ORDERED_DYNAMIC_START GOMP_loop_ordered_dynamic_start
428
#define KMP_API_NAME_GOMP_LOOP_ORDERED_GUIDED_NEXT GOMP_loop_ordered_guided_next
429
#define KMP_API_NAME_GOMP_LOOP_ORDERED_GUIDED_START GOMP_loop_ordered_guided_start
430
#define KMP_API_NAME_GOMP_LOOP_ORDERED_RUNTIME_NEXT GOMP_loop_ordered_runtime_next
431
#define KMP_API_NAME_GOMP_LOOP_ORDERED_RUNTIME_START GOMP_loop_ordered_runtime_start
432
#define KMP_API_NAME_GOMP_LOOP_ORDERED_STATIC_NEXT GOMP_loop_ordered_static_next
433
#define KMP_API_NAME_GOMP_LOOP_ORDERED_STATIC_START GOMP_loop_ordered_static_start
434
#define KMP_API_NAME_GOMP_LOOP_RUNTIME_NEXT GOMP_loop_runtime_next
435
#define KMP_API_NAME_GOMP_LOOP_RUNTIME_START GOMP_loop_runtime_start
436
#define KMP_API_NAME_GOMP_LOOP_STATIC_NEXT GOMP_loop_static_next
437
#define KMP_API_NAME_GOMP_LOOP_STATIC_START GOMP_loop_static_start
438
#define KMP_API_NAME_GOMP_ORDERED_END GOMP_ordered_end
439
#define KMP_API_NAME_GOMP_ORDERED_START GOMP_ordered_start
440
#define KMP_API_NAME_GOMP_PARALLEL_END GOMP_parallel_end
441
#define KMP_API_NAME_GOMP_PARALLEL_LOOP_DYNAMIC_START GOMP_parallel_loop_dynamic_start
442
#define KMP_API_NAME_GOMP_PARALLEL_LOOP_GUIDED_START GOMP_parallel_loop_guided_start
443
#define KMP_API_NAME_GOMP_PARALLEL_LOOP_RUNTIME_START GOMP_parallel_loop_runtime_start
444
#define KMP_API_NAME_GOMP_PARALLEL_LOOP_STATIC_START GOMP_parallel_loop_static_start
445
#define KMP_API_NAME_GOMP_PARALLEL_SECTIONS_START GOMP_parallel_sections_start
446
#define KMP_API_NAME_GOMP_PARALLEL_START GOMP_parallel_start
447
#define KMP_API_NAME_GOMP_SECTIONS_END GOMP_sections_end
448
#define KMP_API_NAME_GOMP_SECTIONS_END_NOWAIT GOMP_sections_end_nowait
449
#define KMP_API_NAME_GOMP_SECTIONS_NEXT GOMP_sections_next
450
#define KMP_API_NAME_GOMP_SECTIONS_START GOMP_sections_start
451
#define KMP_API_NAME_GOMP_SINGLE_COPY_END GOMP_single_copy_end
452
#define KMP_API_NAME_GOMP_SINGLE_COPY_START GOMP_single_copy_start
453
#define KMP_API_NAME_GOMP_SINGLE_START GOMP_single_start
454
455
// All GOMP_2.0 symbols
456
#define KMP_API_NAME_GOMP_TASK GOMP_task
457
#define KMP_API_NAME_GOMP_TASKWAIT GOMP_taskwait
458
#define KMP_API_NAME_GOMP_LOOP_ULL_DYNAMIC_NEXT GOMP_loop_ull_dynamic_next
459
#define KMP_API_NAME_GOMP_LOOP_ULL_DYNAMIC_START GOMP_loop_ull_dynamic_start
460
#define KMP_API_NAME_GOMP_LOOP_ULL_GUIDED_NEXT GOMP_loop_ull_guided_next
461
#define KMP_API_NAME_GOMP_LOOP_ULL_GUIDED_START GOMP_loop_ull_guided_start
462
#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_DYNAMIC_NEXT GOMP_loop_ull_ordered_dynamic_next
463
#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_DYNAMIC_START GOMP_loop_ull_ordered_dynamic_start
464
#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_GUIDED_NEXT GOMP_loop_ull_ordered_guided_next
465
#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_GUIDED_START GOMP_loop_ull_ordered_guided_start
466
#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_RUNTIME_NEXT GOMP_loop_ull_ordered_runtime_next
467
#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_RUNTIME_START GOMP_loop_ull_ordered_runtime_start
468
#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_STATIC_NEXT GOMP_loop_ull_ordered_static_next
469
#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_STATIC_START GOMP_loop_ull_ordered_static_start
470
#define KMP_API_NAME_GOMP_LOOP_ULL_RUNTIME_NEXT GOMP_loop_ull_runtime_next
471
#define KMP_API_NAME_GOMP_LOOP_ULL_RUNTIME_START GOMP_loop_ull_runtime_start
472
#define KMP_API_NAME_GOMP_LOOP_ULL_STATIC_NEXT GOMP_loop_ull_static_next
473
#define KMP_API_NAME_GOMP_LOOP_ULL_STATIC_START GOMP_loop_ull_static_start
474
475
// All GOMP_3.0 symbols
476
#define KMP_API_NAME_GOMP_TASKYIELD GOMP_taskyield
477
478
// All GOMP_4.0 symbols
479
// TODO: As of 2013-10-14, none of the GOMP_4.0 functions are implemented in libiomp5
480
#define KMP_API_NAME_GOMP_BARRIER_CANCEL GOMP_barrier_cancel
481
#define KMP_API_NAME_GOMP_CANCEL GOMP_cancel
482
#define KMP_API_NAME_GOMP_CANCELLATION_POINT GOMP_cancellation_point
483
#define KMP_API_NAME_GOMP_LOOP_END_CANCEL GOMP_loop_end_cancel
484
#define KMP_API_NAME_GOMP_PARALLEL_LOOP_DYNAMIC GOMP_parallel_loop_dynamic
485
#define KMP_API_NAME_GOMP_PARALLEL_LOOP_GUIDED GOMP_parallel_loop_guided
486
#define KMP_API_NAME_GOMP_PARALLEL_LOOP_RUNTIME GOMP_parallel_loop_runtime
487
#define KMP_API_NAME_GOMP_PARALLEL_LOOP_STATIC GOMP_parallel_loop_static
488
#define KMP_API_NAME_GOMP_PARALLEL_SECTIONS GOMP_parallel_sections
489
#define KMP_API_NAME_GOMP_PARALLEL GOMP_parallel
490
#define KMP_API_NAME_GOMP_SECTIONS_END_CANCEL GOMP_sections_end_cancel
491
#define KMP_API_NAME_GOMP_TASKGROUP_START GOMP_taskgroup_start
492
#define KMP_API_NAME_GOMP_TASKGROUP_END GOMP_taskgroup_end
493
/* Target functions should be taken care of by liboffload */
494
#define KMP_API_NAME_GOMP_TARGET GOMP_target
495
#define KMP_API_NAME_GOMP_TARGET_DATA GOMP_target_data
496
#define KMP_API_NAME_GOMP_TARGET_END_DATA GOMP_target_end_data
497
#define KMP_API_NAME_GOMP_TARGET_UPDATE GOMP_target_update
498
#define KMP_API_NAME_GOMP_TEAMS GOMP_teams
499
500
#ifdef KMP_USE_VERSION_SYMBOLS
501
#define xstr(x) str(x)
502
#define str(x) #x
503
504
// If Linux, xexpand prepends __kmp_api_ to the real API name
505
#define xexpand(api_name) expand(api_name)
506
#define expand(api_name) __kmp_api_##api_name
507
508
#define xaliasify(api_name,ver) aliasify(api_name,ver)
509
#define aliasify(api_name,ver) __typeof__(__kmp_api_##api_name) __kmp_api_##api_name##_##ver##_alias __attribute__((alias(xstr(__kmp_api_##api_name))))
510
511
#define xversionify(api_name, version_num, version_str) versionify(api_name, version_num, version_str, "VERSION")
512
#define versionify(api_name, version_num, version_str, default_ver) \
513
__asm__(".symver " xstr(__kmp_api_##api_name##_##version_num##_alias) "," xstr(api_name) "@" version_str "\n\t"); \
514
__asm__(".symver " xstr(__kmp_api_##api_name) "," xstr(api_name) "@@" default_ver "\n\t")
515
516
#else // KMP_USE_VERSION_SYMBOLS
517
#define xstr(x)
/* Nothing */
518
#define str(x)
/* Nothing */
519
520
// if Windows or Mac, xexpand does no name transformation
521
#define xexpand(api_name) expand(api_name)
522
#define expand(api_name) api_name
523
524
#define xaliasify(api_name,ver)
/* Nothing */
525
#define aliasify(api_name,ver)
/* Nothing */
526
527
#define xversionify(api_name, version_num, version_str)
/* Nothing */
528
#define versionify(api_name, version_num, version_str, default_ver)
/* Nothing */
529
530
#endif // KMP_USE_VERSION_SYMBOLS
531
532
#endif
/* KMP_FTN_OS_H */
533
Generated on Wed Oct 8 2014 08:15:31 for Intel® OpenMP* Runtime Library by
1.8.8