LLVM OpenMP 22.0.0git
kmp_ftn_os.h
Go to the documentation of this file.
1/*
2 * kmp_ftn_os.h -- KPTS Fortran defines header file.
3 */
4
5//===----------------------------------------------------------------------===//
6//
7// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
8// See https://llvm.org/LICENSE.txt for license information.
9// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
10//
11//===----------------------------------------------------------------------===//
12
13#ifndef KMP_FTN_OS_H
14#define KMP_FTN_OS_H
15
16// KMP_FNT_ENTRIES may be one of: KMP_FTN_PLAIN, KMP_FTN_UPPER, KMP_FTN_APPEND,
17// KMP_FTN_UAPPEND.
18
19/* -------------------------- External definitions ------------------------ */
20
21#if KMP_FTN_ENTRIES == KMP_FTN_PLAIN
22
23#define FTN_SET_STACKSIZE kmp_set_stacksize
24#define FTN_SET_STACKSIZE_S kmp_set_stacksize_s
25#define FTN_GET_STACKSIZE kmp_get_stacksize
26#define FTN_GET_STACKSIZE_S kmp_get_stacksize_s
27#define FTN_SET_BLOCKTIME kmp_set_blocktime
28#define FTN_GET_BLOCKTIME kmp_get_blocktime
29#define FTN_SET_LIBRARY_SERIAL kmp_set_library_serial
30#define FTN_SET_LIBRARY_TURNAROUND kmp_set_library_turnaround
31#define FTN_SET_LIBRARY_THROUGHPUT kmp_set_library_throughput
32#define FTN_SET_LIBRARY kmp_set_library
33#define FTN_GET_LIBRARY kmp_get_library
34#define FTN_SET_DEFAULTS kmp_set_defaults
35#define FTN_SET_DISP_NUM_BUFFERS kmp_set_disp_num_buffers
36#define FTN_SET_AFFINITY kmp_set_affinity
37#define FTN_GET_AFFINITY kmp_get_affinity
38#define FTN_GET_AFFINITY_MAX_PROC kmp_get_affinity_max_proc
39#define FTN_CREATE_AFFINITY_MASK kmp_create_affinity_mask
40#define FTN_DESTROY_AFFINITY_MASK kmp_destroy_affinity_mask
41#define FTN_SET_AFFINITY_MASK_PROC kmp_set_affinity_mask_proc
42#define FTN_UNSET_AFFINITY_MASK_PROC kmp_unset_affinity_mask_proc
43#define FTN_GET_AFFINITY_MASK_PROC kmp_get_affinity_mask_proc
44
45#define FTN_MALLOC kmp_malloc
46#define FTN_ALIGNED_MALLOC kmp_aligned_malloc
47#define FTN_CALLOC kmp_calloc
48#define FTN_REALLOC kmp_realloc
49#define FTN_KFREE kmp_free
50
51#define FTN_GET_NUM_KNOWN_THREADS kmp_get_num_known_threads
52
53#define FTN_SET_NUM_THREADS omp_set_num_threads
54#define FTN_GET_NUM_THREADS omp_get_num_threads
55#define FTN_GET_MAX_THREADS omp_get_max_threads
56#define FTN_GET_THREAD_NUM omp_get_thread_num
57#define FTN_GET_NUM_PROCS omp_get_num_procs
58#define FTN_SET_DYNAMIC omp_set_dynamic
59#define FTN_GET_DYNAMIC omp_get_dynamic
60#define FTN_SET_NESTED omp_set_nested
61#define FTN_GET_NESTED omp_get_nested
62#define FTN_IN_PARALLEL omp_in_parallel
63#define FTN_GET_THREAD_LIMIT omp_get_thread_limit
64#define FTN_SET_SCHEDULE omp_set_schedule
65#define FTN_GET_SCHEDULE omp_get_schedule
66#define FTN_SET_MAX_ACTIVE_LEVELS omp_set_max_active_levels
67#define FTN_GET_MAX_ACTIVE_LEVELS omp_get_max_active_levels
68#define FTN_GET_ACTIVE_LEVEL omp_get_active_level
69#define FTN_GET_LEVEL omp_get_level
70#define FTN_GET_ANCESTOR_THREAD_NUM omp_get_ancestor_thread_num
71#define FTN_GET_TEAM_SIZE omp_get_team_size
72#define FTN_IN_FINAL omp_in_final
73#define FTN_GET_PROC_BIND omp_get_proc_bind
74#define FTN_GET_NUM_TEAMS omp_get_num_teams
75#define FTN_GET_TEAM_NUM omp_get_team_num
76#define FTN_INIT_LOCK omp_init_lock
77#if KMP_USE_DYNAMIC_LOCK
78#define FTN_INIT_LOCK_WITH_HINT omp_init_lock_with_hint
79#define FTN_INIT_NEST_LOCK_WITH_HINT omp_init_nest_lock_with_hint
80#endif
81#define FTN_DESTROY_LOCK omp_destroy_lock
82#define FTN_SET_LOCK omp_set_lock
83#define FTN_UNSET_LOCK omp_unset_lock
84#define FTN_TEST_LOCK omp_test_lock
85#define FTN_INIT_NEST_LOCK omp_init_nest_lock
86#define FTN_DESTROY_NEST_LOCK omp_destroy_nest_lock
87#define FTN_SET_NEST_LOCK omp_set_nest_lock
88#define FTN_UNSET_NEST_LOCK omp_unset_nest_lock
89#define FTN_TEST_NEST_LOCK omp_test_nest_lock
90
91#define FTN_SET_WARNINGS_ON kmp_set_warnings_on
92#define FTN_SET_WARNINGS_OFF kmp_set_warnings_off
93
94#define FTN_GET_WTIME omp_get_wtime
95#define FTN_GET_WTICK omp_get_wtick
96
97#define FTN_GET_NUM_DEVICES omp_get_num_devices
98#define FTN_GET_DEFAULT_DEVICE omp_get_default_device
99#define FTN_SET_DEFAULT_DEVICE omp_set_default_device
100#define FTN_IS_INITIAL_DEVICE omp_is_initial_device
101
102#define FTN_GET_CANCELLATION omp_get_cancellation
103#define FTN_GET_CANCELLATION_STATUS kmp_get_cancellation_status
104
105#define FTN_GET_MAX_TASK_PRIORITY omp_get_max_task_priority
106#define FTN_GET_NUM_PLACES omp_get_num_places
107#define FTN_GET_PLACE_NUM_PROCS omp_get_place_num_procs
108#define FTN_GET_PLACE_PROC_IDS omp_get_place_proc_ids
109#define FTN_GET_PLACE_NUM omp_get_place_num
110#define FTN_GET_PARTITION_NUM_PLACES omp_get_partition_num_places
111#define FTN_GET_PARTITION_PLACE_NUMS omp_get_partition_place_nums
112#define FTN_GET_INITIAL_DEVICE omp_get_initial_device
113#ifdef KMP_STUB
114#define FTN_TARGET_ALLOC omp_target_alloc
115#define FTN_TARGET_FREE omp_target_free
116#define FTN_TARGET_IS_PRESENT omp_target_is_present
117#define FTN_TARGET_MEMCPY omp_target_memcpy
118#define FTN_TARGET_MEMCPY_RECT omp_target_memcpy_rect
119#define FTN_TARGET_MEMSET omp_target_memset
120#define FTN_TARGET_MEMSET_ASYNC omp_target_memset_async
121#define FTN_TARGET_ASSOCIATE_PTR omp_target_associate_ptr
122#define FTN_TARGET_DISASSOCIATE_PTR omp_target_disassociate_ptr
123#endif
124
125#define FTN_CONTROL_TOOL omp_control_tool
126#define FTN_INIT_ALLOCATOR omp_init_allocator
127#define FTN_DESTROY_ALLOCATOR omp_destroy_allocator
128#define FTN_SET_DEFAULT_ALLOCATOR omp_set_default_allocator
129#define FTN_GET_DEFAULT_ALLOCATOR omp_get_default_allocator
130#define FTN_GET_DEVICES_MEMSPACE omp_get_devices_memspace
131#define FTN_GET_DEVICE_MEMSPACE omp_get_device_memspace
132#define FTN_GET_DEVICES_AND_HOST_MEMSPACE omp_get_devices_and_host_memspace
133#define FTN_GET_DEVICE_AND_HOST_MEMSPACE omp_get_device_and_host_memspace
134#define FTN_GET_DEVICES_ALL_MEMSPACE omp_get_devices_all_memspace
135#define FTN_GET_DEVICES_ALLOCATOR omp_get_devices_allocator
136#define FTN_GET_DEVICE_ALLOCATOR omp_get_device_allocator
137#define FTN_GET_DEVICES_AND_HOST_ALLOCATOR omp_get_devices_and_host_allocator
138#define FTN_GET_DEVICE_AND_HOST_ALLOCATOR omp_get_device_and_host_allocator
139#define FTN_GET_DEVICES_ALL_ALLOCATOR omp_get_devices_all_allocator
140#define FTN_GET_MEMSPACE_NUM_RESOURCES omp_get_memspace_num_resources
141#define FTN_GET_SUBMEMSPACE omp_get_submemspace
142#define FTN_GET_DEVICE_NUM omp_get_device_num
143#define FTN_GET_UID_FROM_DEVICE omp_get_uid_from_device
144#define FTN_GET_DEVICE_FROM_UID omp_get_device_from_uid
145#define FTN_SET_AFFINITY_FORMAT omp_set_affinity_format
146#define FTN_GET_AFFINITY_FORMAT omp_get_affinity_format
147#define FTN_DISPLAY_AFFINITY omp_display_affinity
148#define FTN_CAPTURE_AFFINITY omp_capture_affinity
149#define FTN_PAUSE_RESOURCE omp_pause_resource
150#define FTN_PAUSE_RESOURCE_ALL omp_pause_resource_all
151#define FTN_GET_SUPPORTED_ACTIVE_LEVELS omp_get_supported_active_levels
152#define FTN_DISPLAY_ENV omp_display_env
153#define FTN_IN_EXPLICIT_TASK omp_in_explicit_task
154#define FTN_FULFILL_EVENT omp_fulfill_event
155#define FTN_SET_NUM_TEAMS omp_set_num_teams
156#define FTN_GET_MAX_TEAMS omp_get_max_teams
157#define FTN_SET_TEAMS_THREAD_LIMIT omp_set_teams_thread_limit
158#define FTN_GET_TEAMS_THREAD_LIMIT omp_get_teams_thread_limit
159
160#define FTN_GET_NUM_INTEROP_PROPERTIES omp_get_num_interop_properties
161#define FTN_GET_INTEROP_INT omp_get_interop_int
162#define FTN_GET_INTEROP_PTR omp_get_interop_ptr
163#define FTN_GET_INTEROP_STR omp_get_interop_str
164#define FTN_GET_INTEROP_NAME omp_get_interop_name
165#define FTN_GET_INTEROP_TYPE_DESC omp_get_interop_type_desc
166#define FTN_GET_INTEROP_RC_DESC omp_get_interop_rc_desc
167
168#endif /* KMP_FTN_PLAIN */
169
170/* ------------------------------------------------------------------------ */
171
172#if KMP_FTN_ENTRIES == KMP_FTN_APPEND
173
174#define FTN_SET_STACKSIZE kmp_set_stacksize_
175#define FTN_SET_STACKSIZE_S kmp_set_stacksize_s_
176#define FTN_GET_STACKSIZE kmp_get_stacksize_
177#define FTN_GET_STACKSIZE_S kmp_get_stacksize_s_
178#define FTN_SET_BLOCKTIME kmp_set_blocktime_
179#define FTN_GET_BLOCKTIME kmp_get_blocktime_
180#define FTN_SET_LIBRARY_SERIAL kmp_set_library_serial_
181#define FTN_SET_LIBRARY_TURNAROUND kmp_set_library_turnaround_
182#define FTN_SET_LIBRARY_THROUGHPUT kmp_set_library_throughput_
183#define FTN_SET_LIBRARY kmp_set_library_
184#define FTN_GET_LIBRARY kmp_get_library_
185#define FTN_SET_DEFAULTS kmp_set_defaults_
186#define FTN_SET_DISP_NUM_BUFFERS kmp_set_disp_num_buffers_
187#define FTN_SET_AFFINITY kmp_set_affinity_
188#define FTN_GET_AFFINITY kmp_get_affinity_
189#define FTN_GET_AFFINITY_MAX_PROC kmp_get_affinity_max_proc_
190#define FTN_CREATE_AFFINITY_MASK kmp_create_affinity_mask_
191#define FTN_DESTROY_AFFINITY_MASK kmp_destroy_affinity_mask_
192#define FTN_SET_AFFINITY_MASK_PROC kmp_set_affinity_mask_proc_
193#define FTN_UNSET_AFFINITY_MASK_PROC kmp_unset_affinity_mask_proc_
194#define FTN_GET_AFFINITY_MASK_PROC kmp_get_affinity_mask_proc_
195
196#define FTN_MALLOC kmp_malloc_
197#define FTN_ALIGNED_MALLOC kmp_aligned_malloc_
198#define FTN_CALLOC kmp_calloc_
199#define FTN_REALLOC kmp_realloc_
200#define FTN_KFREE kmp_free_
201
202#define FTN_GET_NUM_KNOWN_THREADS kmp_get_num_known_threads_
203
204#define FTN_SET_NUM_THREADS omp_set_num_threads_
205#define FTN_GET_NUM_THREADS omp_get_num_threads_
206#define FTN_GET_MAX_THREADS omp_get_max_threads_
207#define FTN_GET_THREAD_NUM omp_get_thread_num_
208#define FTN_GET_NUM_PROCS omp_get_num_procs_
209#define FTN_SET_DYNAMIC omp_set_dynamic_
210#define FTN_GET_DYNAMIC omp_get_dynamic_
211#define FTN_SET_NESTED omp_set_nested_
212#define FTN_GET_NESTED omp_get_nested_
213#define FTN_IN_PARALLEL omp_in_parallel_
214#define FTN_GET_THREAD_LIMIT omp_get_thread_limit_
215#define FTN_SET_SCHEDULE omp_set_schedule_
216#define FTN_GET_SCHEDULE omp_get_schedule_
217#define FTN_SET_MAX_ACTIVE_LEVELS omp_set_max_active_levels_
218#define FTN_GET_MAX_ACTIVE_LEVELS omp_get_max_active_levels_
219#define FTN_GET_ACTIVE_LEVEL omp_get_active_level_
220#define FTN_GET_LEVEL omp_get_level_
221#define FTN_GET_ANCESTOR_THREAD_NUM omp_get_ancestor_thread_num_
222#define FTN_GET_TEAM_SIZE omp_get_team_size_
223#define FTN_IN_FINAL omp_in_final_
224#define FTN_GET_PROC_BIND omp_get_proc_bind_
225#define FTN_GET_NUM_TEAMS omp_get_num_teams_
226#define FTN_GET_TEAM_NUM omp_get_team_num_
227#define FTN_INIT_LOCK omp_init_lock_
228#if KMP_USE_DYNAMIC_LOCK
229#define FTN_INIT_LOCK_WITH_HINT omp_init_lock_with_hint_
230#define FTN_INIT_NEST_LOCK_WITH_HINT omp_init_nest_lock_with_hint_
231#endif
232#define FTN_DESTROY_LOCK omp_destroy_lock_
233#define FTN_SET_LOCK omp_set_lock_
234#define FTN_UNSET_LOCK omp_unset_lock_
235#define FTN_TEST_LOCK omp_test_lock_
236#define FTN_INIT_NEST_LOCK omp_init_nest_lock_
237#define FTN_DESTROY_NEST_LOCK omp_destroy_nest_lock_
238#define FTN_SET_NEST_LOCK omp_set_nest_lock_
239#define FTN_UNSET_NEST_LOCK omp_unset_nest_lock_
240#define FTN_TEST_NEST_LOCK omp_test_nest_lock_
241
242#define FTN_SET_WARNINGS_ON kmp_set_warnings_on_
243#define FTN_SET_WARNINGS_OFF kmp_set_warnings_off_
244
245#define FTN_GET_WTIME omp_get_wtime_
246#define FTN_GET_WTICK omp_get_wtick_
247
248#define FTN_GET_NUM_DEVICES omp_get_num_devices_
249#define FTN_GET_DEFAULT_DEVICE omp_get_default_device_
250#define FTN_SET_DEFAULT_DEVICE omp_set_default_device_
251#define FTN_IS_INITIAL_DEVICE omp_is_initial_device_
252
253#define FTN_GET_CANCELLATION omp_get_cancellation_
254#define FTN_GET_CANCELLATION_STATUS kmp_get_cancellation_status_
255
256#define FTN_GET_MAX_TASK_PRIORITY omp_get_max_task_priority_
257#define FTN_GET_NUM_PLACES omp_get_num_places_
258#define FTN_GET_PLACE_NUM_PROCS omp_get_place_num_procs_
259#define FTN_GET_PLACE_PROC_IDS omp_get_place_proc_ids_
260#define FTN_GET_PLACE_NUM omp_get_place_num_
261#define FTN_GET_PARTITION_NUM_PLACES omp_get_partition_num_places_
262#define FTN_GET_PARTITION_PLACE_NUMS omp_get_partition_place_nums_
263#define FTN_GET_INITIAL_DEVICE omp_get_initial_device_
264#ifdef KMP_STUB
265#define FTN_TARGET_ALLOC omp_target_alloc_
266#define FTN_TARGET_FREE omp_target_free_
267#define FTN_TARGET_IS_PRESENT omp_target_is_present_
268#define FTN_TARGET_MEMCPY omp_target_memcpy_
269#define FTN_TARGET_MEMCPY_RECT omp_target_memcpy_rect_
270#define FTN_TARGET_ASSOCIATE_PTR omp_target_associate_ptr_
271#define FTN_TARGET_DISASSOCIATE_PTR omp_target_disassociate_ptr_
272#endif
273
274#define FTN_CONTROL_TOOL omp_control_tool_
275#define FTN_INIT_ALLOCATOR omp_init_allocator_
276#define FTN_DESTROY_ALLOCATOR omp_destroy_allocator_
277#define FTN_SET_DEFAULT_ALLOCATOR omp_set_default_allocator_
278#define FTN_GET_DEFAULT_ALLOCATOR omp_get_default_allocator_
279#define FTN_GET_DEVICES_MEMSPACE omp_get_devices_memspace_
280#define FTN_GET_DEVICE_MEMSPACE omp_get_device_memspace_
281#define FTN_GET_DEVICES_AND_HOST_MEMSPACE omp_get_devices_and_host_memspace_
282#define FTN_GET_DEVICE_AND_HOST_MEMSPACE omp_get_device_and_host_memspace_
283#define FTN_GET_DEVICES_ALL_MEMSPACE omp_get_devices_all_memspace_
284#define FTN_GET_DEVICES_ALLOCATOR omp_get_devices_allocator_
285#define FTN_GET_DEVICE_ALLOCATOR omp_get_device_allocator_
286#define FTN_GET_DEVICES_AND_HOST_ALLOCATOR omp_get_devices_and_host_allocator_
287#define FTN_GET_DEVICE_AND_HOST_ALLOCATOR omp_get_device_and_host_allocator_
288#define FTN_GET_DEVICES_ALL_ALLOCATOR omp_get_devices_all_allocator_
289#define FTN_GET_MEMSPACE_NUM_RESOURCES omp_get_memspace_num_resources_
290#define FTN_GET_SUBMEMSPACE omp_get_submemspace_
291#define FTN_ALLOC omp_alloc_
292#define FTN_FREE omp_free_
293#define FTN_GET_DEVICE_NUM omp_get_device_num_
294#define FTN_GET_UID_FROM_DEVICE omp_get_uid_from_device_
295#define FTN_GET_DEVICE_FROM_UID omp_get_device_from_uid_
296#define FTN_SET_AFFINITY_FORMAT omp_set_affinity_format_
297#define FTN_GET_AFFINITY_FORMAT omp_get_affinity_format_
298#define FTN_DISPLAY_AFFINITY omp_display_affinity_
299#define FTN_CAPTURE_AFFINITY omp_capture_affinity_
300#define FTN_PAUSE_RESOURCE omp_pause_resource_
301#define FTN_PAUSE_RESOURCE_ALL omp_pause_resource_all_
302#define FTN_GET_SUPPORTED_ACTIVE_LEVELS omp_get_supported_active_levels_
303#define FTN_DISPLAY_ENV omp_display_env_
304#define FTN_IN_EXPLICIT_TASK omp_in_explicit_task_
305#define FTN_FULFILL_EVENT omp_fulfill_event_
306#define FTN_SET_NUM_TEAMS omp_set_num_teams_
307#define FTN_GET_MAX_TEAMS omp_get_max_teams_
308#define FTN_SET_TEAMS_THREAD_LIMIT omp_set_teams_thread_limit_
309#define FTN_GET_TEAMS_THREAD_LIMIT omp_get_teams_thread_limit_
310
311#define FTN_GET_NUM_INTEROP_PROPERTIES omp_get_num_interop_properties_
312#define FTN_GET_INTEROP_INT omp_get_interop_int_
313#define FTN_GET_INTEROP_PTR omp_get_interop_ptr_
314#define FTN_GET_INTEROP_STR omp_get_interop_str_
315#define FTN_GET_INTEROP_NAME omp_get_interop_name_
316#define FTN_GET_INTEROP_TYPE_DESC omp_get_interop_type_desc_
317#define FTN_GET_INTEROP_RC_DESC omp_get_interop_rc_desc_
318
319#endif /* KMP_FTN_APPEND */
320
321/* ------------------------------------------------------------------------ */
322
323#if KMP_FTN_ENTRIES == KMP_FTN_UPPER
324
325#define FTN_SET_STACKSIZE KMP_SET_STACKSIZE
326#define FTN_SET_STACKSIZE_S KMP_SET_STACKSIZE_S
327#define FTN_GET_STACKSIZE KMP_GET_STACKSIZE
328#define FTN_GET_STACKSIZE_S KMP_GET_STACKSIZE_S
329#define FTN_SET_BLOCKTIME KMP_SET_BLOCKTIME
330#define FTN_GET_BLOCKTIME KMP_GET_BLOCKTIME
331#define FTN_SET_LIBRARY_SERIAL KMP_SET_LIBRARY_SERIAL
332#define FTN_SET_LIBRARY_TURNAROUND KMP_SET_LIBRARY_TURNAROUND
333#define FTN_SET_LIBRARY_THROUGHPUT KMP_SET_LIBRARY_THROUGHPUT
334#define FTN_SET_LIBRARY KMP_SET_LIBRARY
335#define FTN_GET_LIBRARY KMP_GET_LIBRARY
336#define FTN_SET_DEFAULTS KMP_SET_DEFAULTS
337#define FTN_SET_DISP_NUM_BUFFERS KMP_SET_DISP_NUM_BUFFERS
338#define FTN_SET_AFFINITY KMP_SET_AFFINITY
339#define FTN_GET_AFFINITY KMP_GET_AFFINITY
340#define FTN_GET_AFFINITY_MAX_PROC KMP_GET_AFFINITY_MAX_PROC
341#define FTN_CREATE_AFFINITY_MASK KMP_CREATE_AFFINITY_MASK
342#define FTN_DESTROY_AFFINITY_MASK KMP_DESTROY_AFFINITY_MASK
343#define FTN_SET_AFFINITY_MASK_PROC KMP_SET_AFFINITY_MASK_PROC
344#define FTN_UNSET_AFFINITY_MASK_PROC KMP_UNSET_AFFINITY_MASK_PROC
345#define FTN_GET_AFFINITY_MASK_PROC KMP_GET_AFFINITY_MASK_PROC
346
347#define FTN_MALLOC KMP_MALLOC
348#define FTN_ALIGNED_MALLOC KMP_ALIGNED_MALLOC
349#define FTN_CALLOC KMP_CALLOC
350#define FTN_REALLOC KMP_REALLOC
351#define FTN_KFREE KMP_FREE
352
353#define FTN_GET_NUM_KNOWN_THREADS KMP_GET_NUM_KNOWN_THREADS
354
355#define FTN_SET_NUM_THREADS OMP_SET_NUM_THREADS
356#define FTN_GET_NUM_THREADS OMP_GET_NUM_THREADS
357#define FTN_GET_MAX_THREADS OMP_GET_MAX_THREADS
358#define FTN_GET_THREAD_NUM OMP_GET_THREAD_NUM
359#define FTN_GET_NUM_PROCS OMP_GET_NUM_PROCS
360#define FTN_SET_DYNAMIC OMP_SET_DYNAMIC
361#define FTN_GET_DYNAMIC OMP_GET_DYNAMIC
362#define FTN_SET_NESTED OMP_SET_NESTED
363#define FTN_GET_NESTED OMP_GET_NESTED
364#define FTN_IN_PARALLEL OMP_IN_PARALLEL
365#define FTN_GET_THREAD_LIMIT OMP_GET_THREAD_LIMIT
366#define FTN_SET_SCHEDULE OMP_SET_SCHEDULE
367#define FTN_GET_SCHEDULE OMP_GET_SCHEDULE
368#define FTN_SET_MAX_ACTIVE_LEVELS OMP_SET_MAX_ACTIVE_LEVELS
369#define FTN_GET_MAX_ACTIVE_LEVELS OMP_GET_MAX_ACTIVE_LEVELS
370#define FTN_GET_ACTIVE_LEVEL OMP_GET_ACTIVE_LEVEL
371#define FTN_GET_LEVEL OMP_GET_LEVEL
372#define FTN_GET_ANCESTOR_THREAD_NUM OMP_GET_ANCESTOR_THREAD_NUM
373#define FTN_GET_TEAM_SIZE OMP_GET_TEAM_SIZE
374#define FTN_IN_FINAL OMP_IN_FINAL
375#define FTN_GET_PROC_BIND OMP_GET_PROC_BIND
376#define FTN_GET_NUM_TEAMS OMP_GET_NUM_TEAMS
377#define FTN_GET_TEAM_NUM OMP_GET_TEAM_NUM
378#define FTN_INIT_LOCK OMP_INIT_LOCK
379#if KMP_USE_DYNAMIC_LOCK
380#define FTN_INIT_LOCK_WITH_HINT OMP_INIT_LOCK_WITH_HINT
381#define FTN_INIT_NEST_LOCK_WITH_HINT OMP_INIT_NEST_LOCK_WITH_HINT
382#endif
383#define FTN_DESTROY_LOCK OMP_DESTROY_LOCK
384#define FTN_SET_LOCK OMP_SET_LOCK
385#define FTN_UNSET_LOCK OMP_UNSET_LOCK
386#define FTN_TEST_LOCK OMP_TEST_LOCK
387#define FTN_INIT_NEST_LOCK OMP_INIT_NEST_LOCK
388#define FTN_DESTROY_NEST_LOCK OMP_DESTROY_NEST_LOCK
389#define FTN_SET_NEST_LOCK OMP_SET_NEST_LOCK
390#define FTN_UNSET_NEST_LOCK OMP_UNSET_NEST_LOCK
391#define FTN_TEST_NEST_LOCK OMP_TEST_NEST_LOCK
392
393#define FTN_SET_WARNINGS_ON KMP_SET_WARNINGS_ON
394#define FTN_SET_WARNINGS_OFF KMP_SET_WARNINGS_OFF
395
396#define FTN_GET_WTIME OMP_GET_WTIME
397#define FTN_GET_WTICK OMP_GET_WTICK
398
399#define FTN_GET_NUM_DEVICES OMP_GET_NUM_DEVICES
400#define FTN_GET_DEFAULT_DEVICE OMP_GET_DEFAULT_DEVICE
401#define FTN_SET_DEFAULT_DEVICE OMP_SET_DEFAULT_DEVICE
402#define FTN_IS_INITIAL_DEVICE OMP_IS_INITIAL_DEVICE
403
404#define FTN_GET_CANCELLATION OMP_GET_CANCELLATION
405#define FTN_GET_CANCELLATION_STATUS KMP_GET_CANCELLATION_STATUS
406
407#define FTN_GET_MAX_TASK_PRIORITY OMP_GET_MAX_TASK_PRIORITY
408#define FTN_GET_NUM_PLACES OMP_GET_NUM_PLACES
409#define FTN_GET_PLACE_NUM_PROCS OMP_GET_PLACE_NUM_PROCS
410#define FTN_GET_PLACE_PROC_IDS OMP_GET_PLACE_PROC_IDS
411#define FTN_GET_PLACE_NUM OMP_GET_PLACE_NUM
412#define FTN_GET_PARTITION_NUM_PLACES OMP_GET_PARTITION_NUM_PLACES
413#define FTN_GET_PARTITION_PLACE_NUMS OMP_GET_PARTITION_PLACE_NUMS
414#define FTN_GET_INITIAL_DEVICE OMP_GET_INITIAL_DEVICE
415#ifdef KMP_STUB
416#define FTN_TARGET_ALLOC OMP_TARGET_ALLOC
417#define FTN_TARGET_FREE OMP_TARGET_FREE
418#define FTN_TARGET_IS_PRESENT OMP_TARGET_IS_PRESENT
419#define FTN_TARGET_MEMCPY OMP_TARGET_MEMCPY
420#define FTN_TARGET_MEMCPY_RECT OMP_TARGET_MEMCPY_RECT
421#define FTN_TARGET_ASSOCIATE_PTR OMP_TARGET_ASSOCIATE_PTR
422#define FTN_TARGET_DISASSOCIATE_PTR OMP_TARGET_DISASSOCIATE_PTR
423#endif
424
425#define FTN_CONTROL_TOOL OMP_CONTROL_TOOL
426#define FTN_INIT_ALLOCATOR OMP_INIT_ALLOCATOR
427#define FTN_DESTROY_ALLOCATOR OMP_DESTROY_ALLOCATOR
428#define FTN_SET_DEFAULT_ALLOCATOR OMP_SET_DEFAULT_ALLOCATOR
429#define FTN_GET_DEFAULT_ALLOCATOR OMP_GET_DEFAULT_ALLOCATOR
430#define FTN_GET_DEVICES_MEMSPACE OMP_GET_DEVICES_MEMSPACE
431#define FTN_GET_DEVICE_MEMSPACE OMP_GET_DEVICE_MEMSPACE
432#define FTN_GET_DEVICES_AND_HOST_MEMSPACE OMP_GET_DEVICES_AND_HOST_MEMSPACE
433#define FTN_GET_DEVICE_AND_HOST_MEMSPACE OMP_GET_DEVICE_AND_HOST_MEMSPACE
434#define FTN_GET_DEVICES_ALL_MEMSPACE OMP_GET_DEVICES_ALL_MEMSPACE
435#define FTN_GET_DEVICES_ALLOCATOR OMP_GET_DEVICES_ALLOCATOR
436#define FTN_GET_DEVICE_ALLOCATOR OMP_GET_DEVICE_ALLOCATOR
437#define FTN_GET_DEVICES_AND_HOST_ALLOCATOR OMP_GET_DEVICES_AND_HOST_ALLOCATOR
438#define FTN_GET_DEVICE_AND_HOST_ALLOCATOR OMP_GET_DEVICE_AND_HOST_ALLOCATOR
439#define FTN_GET_DEVICES_ALL_ALLOCATOR OMP_GET_DEVICES_ALL_ALLOCATOR
440#define FTN_GET_MEMSPACE_NUM_RESOURCES OMP_GET_MEMSPACE_NUM_RESOURCES
441#define FTN_GET_SUBMEMSPACE OMP_GET_SUBMEMSPACE
442#define FTN_GET_DEVICE_NUM OMP_GET_DEVICE_NUM
443#define FTN_GET_UID_FROM_DEVICE OMP_GET_UID_FROM_DEVICE
444#define FTN_GET_DEVICE_FROM_UID OMP_GET_DEVICE_FROM_UID
445#define FTN_SET_AFFINITY_FORMAT OMP_SET_AFFINITY_FORMAT
446#define FTN_GET_AFFINITY_FORMAT OMP_GET_AFFINITY_FORMAT
447#define FTN_DISPLAY_AFFINITY OMP_DISPLAY_AFFINITY
448#define FTN_CAPTURE_AFFINITY OMP_CAPTURE_AFFINITY
449#define FTN_PAUSE_RESOURCE OMP_PAUSE_RESOURCE
450#define FTN_PAUSE_RESOURCE_ALL OMP_PAUSE_RESOURCE_ALL
451#define FTN_GET_SUPPORTED_ACTIVE_LEVELS OMP_GET_SUPPORTED_ACTIVE_LEVELS
452#define FTN_DISPLAY_ENV OMP_DISPLAY_ENV
453#define FTN_IN_EXPLICIT_TASK OMP_IN_EXPLICIT_TASK
454#define FTN_FULFILL_EVENT OMP_FULFILL_EVENT
455#define FTN_SET_NUM_TEAMS OMP_SET_NUM_TEAMS
456#define FTN_GET_MAX_TEAMS OMP_GET_MAX_TEAMS
457#define FTN_SET_TEAMS_THREAD_LIMIT OMP_SET_TEAMS_THREAD_LIMIT
458#define FTN_GET_TEAMS_THREAD_LIMIT OMP_GET_TEAMS_THREAD_LIMIT
459
460#define FTN_GET_NUM_INTEROP_PROPERTIES OMP_GET_NUM_INTEROP_PROPERTIES
461#define FTN_GET_INTEROP_INT OMP_GET_INTEROP_INT
462#define FTN_GET_INTEROP_PTR OMP_GET_INTEROP_PTR
463#define FTN_GET_INTEROP_STR OMP_GET_INTEROP_STR
464#define FTN_GET_INTEROP_NAME OMP_GET_INTEROP_NAME
465#define FTN_GET_INTEROP_TYPE_DESC OMP_GET_INTEROP_TYPE_DESC
466#define FTN_GET_INTEROP_RC_DESC OMP_GET_INTEROP_RC_DESC
467
468#endif /* KMP_FTN_UPPER */
469
470/* ------------------------------------------------------------------------ */
471
472#if KMP_FTN_ENTRIES == KMP_FTN_UAPPEND
473
474#define FTN_SET_STACKSIZE KMP_SET_STACKSIZE_
475#define FTN_SET_STACKSIZE_S KMP_SET_STACKSIZE_S_
476#define FTN_GET_STACKSIZE KMP_GET_STACKSIZE_
477#define FTN_GET_STACKSIZE_S KMP_GET_STACKSIZE_S_
478#define FTN_SET_BLOCKTIME KMP_SET_BLOCKTIME_
479#define FTN_GET_BLOCKTIME KMP_GET_BLOCKTIME_
480#define FTN_SET_LIBRARY_SERIAL KMP_SET_LIBRARY_SERIAL_
481#define FTN_SET_LIBRARY_TURNAROUND KMP_SET_LIBRARY_TURNAROUND_
482#define FTN_SET_LIBRARY_THROUGHPUT KMP_SET_LIBRARY_THROUGHPUT_
483#define FTN_SET_LIBRARY KMP_SET_LIBRARY_
484#define FTN_GET_LIBRARY KMP_GET_LIBRARY_
485#define FTN_SET_DEFAULTS KMP_SET_DEFAULTS_
486#define FTN_SET_DISP_NUM_BUFFERS KMP_SET_DISP_NUM_BUFFERS_
487#define FTN_SET_AFFINITY KMP_SET_AFFINITY_
488#define FTN_GET_AFFINITY KMP_GET_AFFINITY_
489#define FTN_GET_AFFINITY_MAX_PROC KMP_GET_AFFINITY_MAX_PROC_
490#define FTN_CREATE_AFFINITY_MASK KMP_CREATE_AFFINITY_MASK_
491#define FTN_DESTROY_AFFINITY_MASK KMP_DESTROY_AFFINITY_MASK_
492#define FTN_SET_AFFINITY_MASK_PROC KMP_SET_AFFINITY_MASK_PROC_
493#define FTN_UNSET_AFFINITY_MASK_PROC KMP_UNSET_AFFINITY_MASK_PROC_
494#define FTN_GET_AFFINITY_MASK_PROC KMP_GET_AFFINITY_MASK_PROC_
495
496#define FTN_MALLOC KMP_MALLOC_
497#define FTN_ALIGNED_MALLOC KMP_ALIGNED_MALLOC_
498#define FTN_CALLOC KMP_CALLOC_
499#define FTN_REALLOC KMP_REALLOC_
500#define FTN_KFREE KMP_FREE_
501
502#define FTN_GET_NUM_KNOWN_THREADS KMP_GET_NUM_KNOWN_THREADS_
503
504#define FTN_SET_NUM_THREADS OMP_SET_NUM_THREADS_
505#define FTN_GET_NUM_THREADS OMP_GET_NUM_THREADS_
506#define FTN_GET_MAX_THREADS OMP_GET_MAX_THREADS_
507#define FTN_GET_THREAD_NUM OMP_GET_THREAD_NUM_
508#define FTN_GET_NUM_PROCS OMP_GET_NUM_PROCS_
509#define FTN_SET_DYNAMIC OMP_SET_DYNAMIC_
510#define FTN_GET_DYNAMIC OMP_GET_DYNAMIC_
511#define FTN_SET_NESTED OMP_SET_NESTED_
512#define FTN_GET_NESTED OMP_GET_NESTED_
513#define FTN_IN_PARALLEL OMP_IN_PARALLEL_
514#define FTN_GET_THREAD_LIMIT OMP_GET_THREAD_LIMIT_
515#define FTN_SET_SCHEDULE OMP_SET_SCHEDULE_
516#define FTN_GET_SCHEDULE OMP_GET_SCHEDULE_
517#define FTN_SET_MAX_ACTIVE_LEVELS OMP_SET_MAX_ACTIVE_LEVELS_
518#define FTN_GET_MAX_ACTIVE_LEVELS OMP_GET_MAX_ACTIVE_LEVELS_
519#define FTN_GET_ACTIVE_LEVEL OMP_GET_ACTIVE_LEVEL_
520#define FTN_GET_LEVEL OMP_GET_LEVEL_
521#define FTN_GET_ANCESTOR_THREAD_NUM OMP_GET_ANCESTOR_THREAD_NUM_
522#define FTN_GET_TEAM_SIZE OMP_GET_TEAM_SIZE_
523#define FTN_IN_FINAL OMP_IN_FINAL_
524#define FTN_GET_PROC_BIND OMP_GET_PROC_BIND_
525#define FTN_GET_NUM_TEAMS OMP_GET_NUM_TEAMS_
526#define FTN_GET_TEAM_NUM OMP_GET_TEAM_NUM_
527#define FTN_INIT_LOCK OMP_INIT_LOCK_
528#if KMP_USE_DYNAMIC_LOCK
529#define FTN_INIT_LOCK_WITH_HINT OMP_INIT_LOCK_WITH_HINT_
530#define FTN_INIT_NEST_LOCK_WITH_HINT OMP_INIT_NEST_LOCK_WITH_HINT_
531#endif
532#define FTN_DESTROY_LOCK OMP_DESTROY_LOCK_
533#define FTN_SET_LOCK OMP_SET_LOCK_
534#define FTN_UNSET_LOCK OMP_UNSET_LOCK_
535#define FTN_TEST_LOCK OMP_TEST_LOCK_
536#define FTN_INIT_NEST_LOCK OMP_INIT_NEST_LOCK_
537#define FTN_DESTROY_NEST_LOCK OMP_DESTROY_NEST_LOCK_
538#define FTN_SET_NEST_LOCK OMP_SET_NEST_LOCK_
539#define FTN_UNSET_NEST_LOCK OMP_UNSET_NEST_LOCK_
540#define FTN_TEST_NEST_LOCK OMP_TEST_NEST_LOCK_
541
542#define FTN_SET_WARNINGS_ON KMP_SET_WARNINGS_ON_
543#define FTN_SET_WARNINGS_OFF KMP_SET_WARNINGS_OFF_
544
545#define FTN_GET_WTIME OMP_GET_WTIME_
546#define FTN_GET_WTICK OMP_GET_WTICK_
547
548#define FTN_GET_NUM_DEVICES OMP_GET_NUM_DEVICES_
549#define FTN_GET_DEFAULT_DEVICE OMP_GET_DEFAULT_DEVICE_
550#define FTN_SET_DEFAULT_DEVICE OMP_SET_DEFAULT_DEVICE_
551#define FTN_IS_INITIAL_DEVICE OMP_IS_INITIAL_DEVICE_
552
553#define FTN_GET_CANCELLATION OMP_GET_CANCELLATION_
554#define FTN_GET_CANCELLATION_STATUS KMP_GET_CANCELLATION_STATUS_
555
556#define FTN_GET_MAX_TASK_PRIORITY OMP_GET_MAX_TASK_PRIORITY_
557#define FTN_GET_NUM_PLACES OMP_GET_NUM_PLACES_
558#define FTN_GET_PLACE_NUM_PROCS OMP_GET_PLACE_NUM_PROCS_
559#define FTN_GET_PLACE_PROC_IDS OMP_GET_PLACE_PROC_IDS_
560#define FTN_GET_PLACE_NUM OMP_GET_PLACE_NUM_
561#define FTN_GET_PARTITION_NUM_PLACES OMP_GET_PARTITION_NUM_PLACES_
562#define FTN_GET_PARTITION_PLACE_NUMS OMP_GET_PARTITION_PLACE_NUMS_
563#define FTN_GET_INITIAL_DEVICE OMP_GET_INITIAL_DEVICE_
564#ifdef KMP_STUB
565#define FTN_TARGET_ALLOC OMP_TARGET_ALLOC_
566#define FTN_TARGET_FREE OMP_TARGET_FREE_
567#define FTN_TARGET_IS_PRESENT OMP_TARGET_IS_PRESENT_
568#define FTN_TARGET_MEMCPY OMP_TARGET_MEMCPY_
569#define FTN_TARGET_MEMCPY_RECT OMP_TARGET_MEMCPY_RECT_
570#define FTN_TARGET_ASSOCIATE_PTR OMP_TARGET_ASSOCIATE_PTR_
571#define FTN_TARGET_DISASSOCIATE_PTR OMP_TARGET_DISASSOCIATE_PTR_
572#endif
573
574#define FTN_CONTROL_TOOL OMP_CONTROL_TOOL_
575#define FTN_INIT_ALLOCATOR OMP_INIT_ALLOCATOR_
576#define FTN_DESTROY_ALLOCATOR OMP_DESTROY_ALLOCATOR_
577#define FTN_SET_DEFAULT_ALLOCATOR OMP_SET_DEFAULT_ALLOCATOR_
578#define FTN_GET_DEFAULT_ALLOCATOR OMP_GET_DEFAULT_ALLOCATOR_
579#define FTN_GET_DEVICES_MEMSPACE OMP_GET_DEVICES_MEMSPACE_
580#define FTN_GET_DEVICE_MEMSPACE OMP_GET_DEVICE_MEMSPACE_
581#define FTN_GET_DEVICES_AND_HOST_MEMSPACE OMP_GET_DEVICES_AND_HOST_MEMSPACE_
582#define FTN_GET_DEVICE_AND_HOST_MEMSPACE OMP_GET_DEVICE_AND_HOST_MEMSPACE_
583#define FTN_GET_DEVICES_ALL_MEMSPACE OMP_GET_DEVICES_ALL_MEMSPACE_
584#define FTN_GET_DEVICES_ALLOCATOR OMP_GET_DEVICES_ALLOCATOR_
585#define FTN_GET_DEVICE_ALLOCATOR OMP_GET_DEVICE_ALLOCATOR_
586#define FTN_GET_DEVICES_AND_HOST_ALLOCATOR OMP_GET_DEVICES_AND_HOST_ALLOCATOR_
587#define FTN_GET_DEVICE_AND_HOST_ALLOCATOR OMP_GET_DEVICE_AND_HOST_ALLOCATOR_
588#define FTN_GET_DEVICES_ALL_ALLOCATOR OMP_GET_DEVICES_ALL_ALLOCATOR_
589#define FTN_GET_MEMSPACE_NUM_RESOURCES OMP_GET_MEMSPACE_NUM_RESOURCES_
590#define FTN_GET_SUBMEMSPACE OMP_GET_SUBMEMSPACE_
591#define FTN_ALLOC OMP_ALLOC_
592#define FTN_FREE OMP_FREE_
593#define FTN_GET_DEVICE_NUM OMP_GET_DEVICE_NUM_
594#define FTN_GET_UID_FROM_DEVICE OMP_GET_UID_FROM_DEVICE_
595#define FTN_GET_DEVICE_FROM_UID OMP_GET_DEVICE_FROM_UID_
596#define FTN_SET_AFFINITY_FORMAT OMP_SET_AFFINITY_FORMAT_
597#define FTN_GET_AFFINITY_FORMAT OMP_GET_AFFINITY_FORMAT_
598#define FTN_DISPLAY_AFFINITY OMP_DISPLAY_AFFINITY_
599#define FTN_CAPTURE_AFFINITY OMP_CAPTURE_AFFINITY_
600#define FTN_PAUSE_RESOURCE OMP_PAUSE_RESOURCE_
601#define FTN_PAUSE_RESOURCE_ALL OMP_PAUSE_RESOURCE_ALL_
602#define FTN_GET_SUPPORTED_ACTIVE_LEVELS OMP_GET_SUPPORTED_ACTIVE_LEVELS_
603#define FTN_DISPLAY_ENV OMP_DISPLAY_ENV_
604#define FTN_IN_EXPLICIT_TASK OMP_IN_EXPLICIT_TASK_
605#define FTN_FULFILL_EVENT OMP_FULFILL_EVENT_
606#define FTN_SET_NUM_TEAMS OMP_SET_NUM_TEAMS_
607#define FTN_GET_MAX_TEAMS OMP_GET_MAX_TEAMS_
608#define FTN_SET_TEAMS_THREAD_LIMIT OMP_SET_TEAMS_THREAD_LIMIT_
609#define FTN_GET_TEAMS_THREAD_LIMIT OMP_GET_TEAMS_THREAD_LIMIT_
610
611#define FTN_GET_NUM_INTEROP_PROPERTIES OMP_GET_NUM_INTEROP_PROPERTIES_
612#define FTN_GET_INTEROP_INT OMP_GET_INTEROP_INT_
613#define FTN_GET_INTEROP_PTR OMP_GET_INTEROP_PTR_
614#define FTN_GET_INTEROP_STR OMP_GET_INTEROP_STR_
615#define FTN_GET_INTEROP_NAME OMP_GET_INTEROP_NAME_
616#define FTN_GET_INTEROP_TYPE_DESC OMP_GET_INTEROP_TYPE_DESC_
617#define FTN_GET_INTEROP_RC_DESC OMP_GET_INTEROP_RC_DESC_
618
619#endif /* KMP_FTN_UAPPEND */
620
621/* -------------------------- GOMP API NAMES ------------------------ */
622// All GOMP_1.0 symbols
623#define KMP_API_NAME_GOMP_ATOMIC_END GOMP_atomic_end
624#define KMP_API_NAME_GOMP_ATOMIC_START GOMP_atomic_start
625#define KMP_API_NAME_GOMP_BARRIER GOMP_barrier
626#define KMP_API_NAME_GOMP_CRITICAL_END GOMP_critical_end
627#define KMP_API_NAME_GOMP_CRITICAL_NAME_END GOMP_critical_name_end
628#define KMP_API_NAME_GOMP_CRITICAL_NAME_START GOMP_critical_name_start
629#define KMP_API_NAME_GOMP_CRITICAL_START GOMP_critical_start
630#define KMP_API_NAME_GOMP_LOOP_DYNAMIC_NEXT GOMP_loop_dynamic_next
631#define KMP_API_NAME_GOMP_LOOP_DYNAMIC_START GOMP_loop_dynamic_start
632#define KMP_API_NAME_GOMP_LOOP_END GOMP_loop_end
633#define KMP_API_NAME_GOMP_LOOP_END_NOWAIT GOMP_loop_end_nowait
634#define KMP_API_NAME_GOMP_LOOP_GUIDED_NEXT GOMP_loop_guided_next
635#define KMP_API_NAME_GOMP_LOOP_GUIDED_START GOMP_loop_guided_start
636#define KMP_API_NAME_GOMP_LOOP_ORDERED_DYNAMIC_NEXT \
637 GOMP_loop_ordered_dynamic_next
638#define KMP_API_NAME_GOMP_LOOP_ORDERED_DYNAMIC_START \
639 GOMP_loop_ordered_dynamic_start
640#define KMP_API_NAME_GOMP_LOOP_ORDERED_GUIDED_NEXT GOMP_loop_ordered_guided_next
641#define KMP_API_NAME_GOMP_LOOP_ORDERED_GUIDED_START \
642 GOMP_loop_ordered_guided_start
643#define KMP_API_NAME_GOMP_LOOP_ORDERED_RUNTIME_NEXT \
644 GOMP_loop_ordered_runtime_next
645#define KMP_API_NAME_GOMP_LOOP_ORDERED_RUNTIME_START \
646 GOMP_loop_ordered_runtime_start
647#define KMP_API_NAME_GOMP_LOOP_ORDERED_STATIC_NEXT GOMP_loop_ordered_static_next
648#define KMP_API_NAME_GOMP_LOOP_ORDERED_STATIC_START \
649 GOMP_loop_ordered_static_start
650#define KMP_API_NAME_GOMP_LOOP_RUNTIME_NEXT GOMP_loop_runtime_next
651#define KMP_API_NAME_GOMP_LOOP_RUNTIME_START GOMP_loop_runtime_start
652#define KMP_API_NAME_GOMP_LOOP_STATIC_NEXT GOMP_loop_static_next
653#define KMP_API_NAME_GOMP_LOOP_STATIC_START GOMP_loop_static_start
654#define KMP_API_NAME_GOMP_ORDERED_END GOMP_ordered_end
655#define KMP_API_NAME_GOMP_ORDERED_START GOMP_ordered_start
656#define KMP_API_NAME_GOMP_PARALLEL_END GOMP_parallel_end
657#define KMP_API_NAME_GOMP_PARALLEL_LOOP_DYNAMIC_START \
658 GOMP_parallel_loop_dynamic_start
659#define KMP_API_NAME_GOMP_PARALLEL_LOOP_GUIDED_START \
660 GOMP_parallel_loop_guided_start
661#define KMP_API_NAME_GOMP_PARALLEL_LOOP_RUNTIME_START \
662 GOMP_parallel_loop_runtime_start
663#define KMP_API_NAME_GOMP_PARALLEL_LOOP_STATIC_START \
664 GOMP_parallel_loop_static_start
665#define KMP_API_NAME_GOMP_PARALLEL_SECTIONS_START GOMP_parallel_sections_start
666#define KMP_API_NAME_GOMP_PARALLEL_START GOMP_parallel_start
667#define KMP_API_NAME_GOMP_SECTIONS_END GOMP_sections_end
668#define KMP_API_NAME_GOMP_SECTIONS_END_NOWAIT GOMP_sections_end_nowait
669#define KMP_API_NAME_GOMP_SECTIONS_NEXT GOMP_sections_next
670#define KMP_API_NAME_GOMP_SECTIONS_START GOMP_sections_start
671#define KMP_API_NAME_GOMP_SINGLE_COPY_END GOMP_single_copy_end
672#define KMP_API_NAME_GOMP_SINGLE_COPY_START GOMP_single_copy_start
673#define KMP_API_NAME_GOMP_SINGLE_START GOMP_single_start
674
675// All GOMP_2.0 symbols
676#define KMP_API_NAME_GOMP_TASK GOMP_task
677#define KMP_API_NAME_GOMP_TASKWAIT GOMP_taskwait
678#define KMP_API_NAME_GOMP_LOOP_ULL_DYNAMIC_NEXT GOMP_loop_ull_dynamic_next
679#define KMP_API_NAME_GOMP_LOOP_ULL_DYNAMIC_START GOMP_loop_ull_dynamic_start
680#define KMP_API_NAME_GOMP_LOOP_ULL_GUIDED_NEXT GOMP_loop_ull_guided_next
681#define KMP_API_NAME_GOMP_LOOP_ULL_GUIDED_START GOMP_loop_ull_guided_start
682#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_DYNAMIC_NEXT \
683 GOMP_loop_ull_ordered_dynamic_next
684#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_DYNAMIC_START \
685 GOMP_loop_ull_ordered_dynamic_start
686#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_GUIDED_NEXT \
687 GOMP_loop_ull_ordered_guided_next
688#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_GUIDED_START \
689 GOMP_loop_ull_ordered_guided_start
690#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_RUNTIME_NEXT \
691 GOMP_loop_ull_ordered_runtime_next
692#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_RUNTIME_START \
693 GOMP_loop_ull_ordered_runtime_start
694#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_STATIC_NEXT \
695 GOMP_loop_ull_ordered_static_next
696#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_STATIC_START \
697 GOMP_loop_ull_ordered_static_start
698#define KMP_API_NAME_GOMP_LOOP_ULL_RUNTIME_NEXT GOMP_loop_ull_runtime_next
699#define KMP_API_NAME_GOMP_LOOP_ULL_RUNTIME_START GOMP_loop_ull_runtime_start
700#define KMP_API_NAME_GOMP_LOOP_ULL_STATIC_NEXT GOMP_loop_ull_static_next
701#define KMP_API_NAME_GOMP_LOOP_ULL_STATIC_START GOMP_loop_ull_static_start
702
703// All GOMP_3.0 symbols
704#define KMP_API_NAME_GOMP_TASKYIELD GOMP_taskyield
705
706// All GOMP_4.0 symbols
707#define KMP_API_NAME_GOMP_BARRIER_CANCEL GOMP_barrier_cancel
708#define KMP_API_NAME_GOMP_CANCEL GOMP_cancel
709#define KMP_API_NAME_GOMP_CANCELLATION_POINT GOMP_cancellation_point
710#define KMP_API_NAME_GOMP_LOOP_END_CANCEL GOMP_loop_end_cancel
711#define KMP_API_NAME_GOMP_PARALLEL_LOOP_DYNAMIC GOMP_parallel_loop_dynamic
712#define KMP_API_NAME_GOMP_PARALLEL_LOOP_GUIDED GOMP_parallel_loop_guided
713#define KMP_API_NAME_GOMP_PARALLEL_LOOP_RUNTIME GOMP_parallel_loop_runtime
714#define KMP_API_NAME_GOMP_PARALLEL_LOOP_STATIC GOMP_parallel_loop_static
715#define KMP_API_NAME_GOMP_PARALLEL_SECTIONS GOMP_parallel_sections
716#define KMP_API_NAME_GOMP_PARALLEL GOMP_parallel
717#define KMP_API_NAME_GOMP_SECTIONS_END_CANCEL GOMP_sections_end_cancel
718#define KMP_API_NAME_GOMP_TASKGROUP_START GOMP_taskgroup_start
719#define KMP_API_NAME_GOMP_TASKGROUP_END GOMP_taskgroup_end
720/* Target functions should be taken care of by liboffload */
721#define KMP_API_NAME_GOMP_TARGET GOMP_target
722#define KMP_API_NAME_GOMP_TARGET_DATA GOMP_target_data
723#define KMP_API_NAME_GOMP_TARGET_END_DATA GOMP_target_end_data
724#define KMP_API_NAME_GOMP_TARGET_UPDATE GOMP_target_update
725#define KMP_API_NAME_GOMP_TEAMS GOMP_teams
726
727// All GOMP_4.5 symbols
728#define KMP_API_NAME_GOMP_TASKLOOP GOMP_taskloop
729#define KMP_API_NAME_GOMP_TASKLOOP_ULL GOMP_taskloop_ull
730#define KMP_API_NAME_GOMP_DOACROSS_POST GOMP_doacross_post
731#define KMP_API_NAME_GOMP_DOACROSS_WAIT GOMP_doacross_wait
732#define KMP_API_NAME_GOMP_LOOP_DOACROSS_STATIC_START \
733 GOMP_loop_doacross_static_start
734#define KMP_API_NAME_GOMP_LOOP_DOACROSS_DYNAMIC_START \
735 GOMP_loop_doacross_dynamic_start
736#define KMP_API_NAME_GOMP_LOOP_DOACROSS_GUIDED_START \
737 GOMP_loop_doacross_guided_start
738#define KMP_API_NAME_GOMP_LOOP_DOACROSS_RUNTIME_START \
739 GOMP_loop_doacross_runtime_start
740#define KMP_API_NAME_GOMP_DOACROSS_ULL_POST GOMP_doacross_ull_post
741#define KMP_API_NAME_GOMP_DOACROSS_ULL_WAIT GOMP_doacross_ull_wait
742#define KMP_API_NAME_GOMP_LOOP_ULL_DOACROSS_STATIC_START \
743 GOMP_loop_ull_doacross_static_start
744#define KMP_API_NAME_GOMP_LOOP_ULL_DOACROSS_DYNAMIC_START \
745 GOMP_loop_ull_doacross_dynamic_start
746#define KMP_API_NAME_GOMP_LOOP_ULL_DOACROSS_GUIDED_START \
747 GOMP_loop_ull_doacross_guided_start
748#define KMP_API_NAME_GOMP_LOOP_ULL_DOACROSS_RUNTIME_START \
749 GOMP_loop_ull_doacross_runtime_start
750#define KMP_API_NAME_GOMP_LOOP_NONMONOTONIC_DYNAMIC_NEXT \
751 GOMP_loop_nonmonotonic_dynamic_next
752#define KMP_API_NAME_GOMP_LOOP_NONMONOTONIC_DYNAMIC_START \
753 GOMP_loop_nonmonotonic_dynamic_start
754#define KMP_API_NAME_GOMP_LOOP_NONMONOTONIC_GUIDED_NEXT \
755 GOMP_loop_nonmonotonic_guided_next
756#define KMP_API_NAME_GOMP_LOOP_NONMONOTONIC_GUIDED_START \
757 GOMP_loop_nonmonotonic_guided_start
758#define KMP_API_NAME_GOMP_LOOP_ULL_NONMONOTONIC_DYNAMIC_NEXT \
759 GOMP_loop_ull_nonmonotonic_dynamic_next
760#define KMP_API_NAME_GOMP_LOOP_ULL_NONMONOTONIC_DYNAMIC_START \
761 GOMP_loop_ull_nonmonotonic_dynamic_start
762#define KMP_API_NAME_GOMP_LOOP_ULL_NONMONOTONIC_GUIDED_NEXT \
763 GOMP_loop_ull_nonmonotonic_guided_next
764#define KMP_API_NAME_GOMP_LOOP_ULL_NONMONOTONIC_GUIDED_START \
765 GOMP_loop_ull_nonmonotonic_guided_start
766#define KMP_API_NAME_GOMP_PARALLEL_LOOP_NONMONOTONIC_DYNAMIC \
767 GOMP_parallel_loop_nonmonotonic_dynamic
768#define KMP_API_NAME_GOMP_PARALLEL_LOOP_NONMONOTONIC_GUIDED \
769 GOMP_parallel_loop_nonmonotonic_guided
770
771// All GOMP_5.0 symbols
772#define KMP_API_NAME_GOMP_LOOP_MAYBE_NONMONOTONIC_RUNTIME_NEXT \
773 GOMP_loop_maybe_nonmonotonic_runtime_next
774#define KMP_API_NAME_GOMP_LOOP_MAYBE_NONMONOTONIC_RUNTIME_START \
775 GOMP_loop_maybe_nonmonotonic_runtime_start
776#define KMP_API_NAME_GOMP_LOOP_NONMONOTONIC_RUNTIME_NEXT \
777 GOMP_loop_nonmonotonic_runtime_next
778#define KMP_API_NAME_GOMP_LOOP_NONMONOTONIC_RUNTIME_START \
779 GOMP_loop_nonmonotonic_runtime_start
780#define KMP_API_NAME_GOMP_LOOP_ULL_MAYBE_NONMONOTONIC_RUNTIME_NEXT \
781 GOMP_loop_ull_maybe_nonmonotonic_runtime_next
782#define KMP_API_NAME_GOMP_LOOP_ULL_MAYBE_NONMONOTONIC_RUNTIME_START \
783 GOMP_loop_ull_maybe_nonmonotonic_runtime_start
784#define KMP_API_NAME_GOMP_LOOP_ULL_NONMONOTONIC_RUNTIME_NEXT \
785 GOMP_loop_ull_nonmonotonic_runtime_next
786#define KMP_API_NAME_GOMP_LOOP_ULL_NONMONOTONIC_RUNTIME_START \
787 GOMP_loop_ull_nonmonotonic_runtime_start
788#define KMP_API_NAME_GOMP_PARALLEL_LOOP_NONMONOTONIC_RUNTIME \
789 GOMP_parallel_loop_nonmonotonic_runtime
790#define KMP_API_NAME_GOMP_PARALLEL_LOOP_MAYBE_NONMONOTONIC_RUNTIME \
791 GOMP_parallel_loop_maybe_nonmonotonic_runtime
792#define KMP_API_NAME_GOMP_TEAMS_REG GOMP_teams_reg
793#define KMP_API_NAME_GOMP_TASKWAIT_DEPEND GOMP_taskwait_depend
794#define KMP_API_NAME_GOMP_TASKGROUP_REDUCTION_REGISTER \
795 GOMP_taskgroup_reduction_register
796#define KMP_API_NAME_GOMP_TASKGROUP_REDUCTION_UNREGISTER \
797 GOMP_taskgroup_reduction_unregister
798#define KMP_API_NAME_GOMP_TASK_REDUCTION_REMAP GOMP_task_reduction_remap
799#define KMP_API_NAME_GOMP_PARALLEL_REDUCTIONS GOMP_parallel_reductions
800#define KMP_API_NAME_GOMP_LOOP_START GOMP_loop_start
801#define KMP_API_NAME_GOMP_LOOP_ULL_START GOMP_loop_ull_start
802#define KMP_API_NAME_GOMP_LOOP_DOACROSS_START GOMP_loop_doacross_start
803#define KMP_API_NAME_GOMP_LOOP_ULL_DOACROSS_START GOMP_loop_ull_doacross_start
804#define KMP_API_NAME_GOMP_LOOP_ORDERED_START GOMP_loop_ordered_start
805#define KMP_API_NAME_GOMP_LOOP_ULL_ORDERED_START GOMP_loop_ull_ordered_start
806#define KMP_API_NAME_GOMP_SECTIONS2_START GOMP_sections2_start
807#define KMP_API_NAME_GOMP_WORKSHARE_TASK_REDUCTION_UNREGISTER \
808 GOMP_workshare_task_reduction_unregister
809#define KMP_API_NAME_GOMP_ALLOC GOMP_alloc
810#define KMP_API_NAME_GOMP_FREE GOMP_free
811#endif /* KMP_FTN_OS_H */