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