1! include/omp_lib.h.var 2 3! 4!//===----------------------------------------------------------------------===// 5!// 6!// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 7!// See https://llvm.org/LICENSE.txt for license information. 8!// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 9!// 10!//===----------------------------------------------------------------------===// 11! 12 13 integer omp_integer_kind 14 parameter(omp_integer_kind=4) 15 integer omp_logical_kind 16 parameter(omp_logical_kind=4) 17 integer omp_real_kind 18 parameter(omp_real_kind=4) 19 integer omp_lock_kind 20 parameter(omp_lock_kind=int_ptr_kind()) 21 integer omp_nest_lock_kind 22 parameter(omp_nest_lock_kind=int_ptr_kind()) 23 integer omp_sched_kind 24 parameter(omp_sched_kind=omp_integer_kind) 25 integer omp_proc_bind_kind 26 parameter(omp_proc_bind_kind=omp_integer_kind) 27 integer kmp_pointer_kind 28 parameter(kmp_pointer_kind=int_ptr_kind()) 29 integer kmp_size_t_kind 30 parameter(kmp_size_t_kind=int_ptr_kind()) 31 integer kmp_affinity_mask_kind 32 parameter(kmp_affinity_mask_kind=int_ptr_kind()) 33 integer omp_sync_hint_kind 34 parameter(omp_sync_hint_kind=omp_integer_kind) 35 integer omp_lock_hint_kind 36 parameter(omp_lock_hint_kind=omp_sync_hint_kind) 37 integer omp_control_tool_kind 38 parameter(omp_control_tool_kind=omp_integer_kind) 39 integer omp_control_tool_result_kind 40 parameter(omp_control_tool_result_kind=omp_integer_kind) 41 integer omp_allocator_handle_kind 42 parameter(omp_allocator_handle_kind=int_ptr_kind()) 43 integer omp_memspace_handle_kind 44 parameter(omp_memspace_handle_kind=int_ptr_kind()) 45 integer omp_alloctrait_key_kind 46 parameter(omp_alloctrait_key_kind=omp_integer_kind) 47 integer omp_alloctrait_val_kind 48 parameter(omp_alloctrait_val_kind=int_ptr_kind()) 49 integer omp_pause_resource_kind 50 parameter(omp_pause_resource_kind=omp_integer_kind) 51 integer omp_depend_kind 52 parameter(omp_depend_kind=int_ptr_kind()) 53 integer omp_event_handle_kind 54 parameter(omp_event_handle_kind=int_ptr_kind()) 55 integer omp_interop_kind 56 parameter(omp_interop_kind=int_ptr_kind()) 57 integer omp_interop_fr_kind 58 parameter(omp_interop_fr_kind=omp_integer_kind) 59 60 integer(kind=omp_integer_kind)openmp_version 61 parameter(openmp_version=@LIBOMP_OMP_YEAR_MONTH@) 62 integer(kind=omp_integer_kind)kmp_version_major 63 parameter(kmp_version_major=@LIBOMP_VERSION_MAJOR@) 64 integer(kind=omp_integer_kind)kmp_version_minor 65 parameter(kmp_version_minor=@LIBOMP_VERSION_MINOR@) 66 integer(kind=omp_integer_kind)kmp_version_build 67 parameter(kmp_version_build=@LIBOMP_VERSION_BUILD@) 68 character(*)kmp_build_date 69 parameter(kmp_build_date='@LIBOMP_BUILD_DATE@') 70 71 integer(kind=omp_sched_kind)omp_sched_static 72 parameter(omp_sched_static=1) 73 integer(kind=omp_sched_kind)omp_sched_dynamic 74 parameter(omp_sched_dynamic=2) 75 integer(kind=omp_sched_kind)omp_sched_guided 76 parameter(omp_sched_guided=3) 77 integer(kind=omp_sched_kind)omp_sched_auto 78 parameter(omp_sched_auto=4) 79 integer(kind=omp_sched_kind)omp_sched_monotonic 80 parameter(omp_sched_monotonic=Z'80000000') 81 82 integer(kind=omp_proc_bind_kind)omp_proc_bind_false 83 parameter(omp_proc_bind_false=0) 84 integer(kind=omp_proc_bind_kind)omp_proc_bind_true 85 parameter(omp_proc_bind_true=1) 86 integer(kind=omp_proc_bind_kind)omp_proc_bind_master 87 parameter(omp_proc_bind_master=2) 88 integer(kind=omp_proc_bind_kind)omp_proc_bind_close 89 parameter(omp_proc_bind_close=3) 90 integer(kind=omp_proc_bind_kind)omp_proc_bind_spread 91 parameter(omp_proc_bind_spread=4) 92 93 integer(kind=omp_sync_hint_kind)omp_sync_hint_none 94 parameter(omp_sync_hint_none=0) 95 integer(kind=omp_sync_hint_kind)omp_sync_hint_uncontended 96 parameter(omp_sync_hint_uncontended=1) 97 integer(kind=omp_sync_hint_kind)omp_sync_hint_contended 98 parameter(omp_sync_hint_contended=2) 99 integer(kind=omp_sync_hint_kind)omp_sync_hint_nonspeculative 100 parameter(omp_sync_hint_nonspeculative=4) 101 integer(kind=omp_sync_hint_kind)omp_sync_hint_speculative 102 parameter(omp_sync_hint_speculative=8) 103 integer(kind=omp_lock_hint_kind)omp_lock_hint_none 104 parameter(omp_lock_hint_none=omp_sync_hint_none) 105 integer(kind=omp_lock_hint_kind)omp_lock_hint_uncontended 106 parameter(omp_lock_hint_uncontended=omp_sync_hint_uncontended) 107 integer(kind=omp_lock_hint_kind)omp_lock_hint_contended 108 parameter(omp_lock_hint_contended=omp_sync_hint_contended) 109 integer(kind=omp_lock_hint_kind)omp_lock_hint_nonspeculative 110 parameter(omp_lock_hint_nonspeculative=4) 111 integer(kind=omp_lock_hint_kind)omp_lock_hint_speculative 112 parameter(omp_lock_hint_speculative=omp_sync_hint_speculative) 113 integer(kind=omp_lock_hint_kind)kmp_lock_hint_hle 114 parameter(kmp_lock_hint_hle=65536) 115 integer(kind=omp_lock_hint_kind)kmp_lock_hint_rtm 116 parameter(kmp_lock_hint_rtm=131072) 117 integer(kind=omp_lock_hint_kind)kmp_lock_hint_adaptive 118 parameter(kmp_lock_hint_adaptive=262144) 119 120 integer(kind=omp_control_tool_kind)omp_control_tool_start 121 parameter(omp_control_tool_start=1) 122 integer(kind=omp_control_tool_kind)omp_control_tool_pause 123 parameter(omp_control_tool_pause=2) 124 integer(kind=omp_control_tool_kind)omp_control_tool_flush 125 parameter(omp_control_tool_flush=3) 126 integer(kind=omp_control_tool_kind)omp_control_tool_end 127 parameter(omp_control_tool_end=4) 128 129 integer(omp_control_tool_result_kind)omp_control_tool_notool 130 parameter(omp_control_tool_notool=-2) 131 integer(omp_control_tool_result_kind)omp_control_tool_nocallback 132 parameter(omp_control_tool_nocallback=-1) 133 integer(omp_control_tool_result_kind)omp_control_tool_success 134 parameter(omp_control_tool_success=0) 135 integer(omp_control_tool_result_kind)omp_control_tool_ignored 136 parameter(omp_control_tool_ignored=1) 137 138 integer(kind=omp_alloctrait_key_kind)omp_atk_sync_hint 139 parameter(omp_atk_sync_hint=1) 140 integer(kind=omp_alloctrait_key_kind)omp_atk_alignment 141 parameter(omp_atk_alignment=2) 142 integer(kind=omp_alloctrait_key_kind)omp_atk_access 143 parameter(omp_atk_access=3) 144 integer(kind=omp_alloctrait_key_kind)omp_atk_pool_size 145 parameter(omp_atk_pool_size=4) 146 integer(kind=omp_alloctrait_key_kind)omp_atk_fallback 147 parameter(omp_atk_fallback=5) 148 integer(kind=omp_alloctrait_key_kind)omp_atk_fb_data 149 parameter(omp_atk_fb_data=6) 150 integer(kind=omp_alloctrait_key_kind)omp_atk_pinned 151 parameter(omp_atk_pinned=7) 152 integer(kind=omp_alloctrait_key_kind)omp_atk_partition 153 parameter(omp_atk_partition=8) 154 155 integer(kind=omp_alloctrait_val_kind)omp_atv_default 156 parameter(omp_atv_default=-1) 157 ! Reserved for future use 158 integer(kind=omp_alloctrait_val_kind)omp_atv_false 159 parameter(omp_atv_false=0) 160 ! Reserved for future use 161 integer(kind=omp_alloctrait_val_kind)omp_atv_true 162 parameter(omp_atv_true=1) 163 integer(kind=omp_alloctrait_val_kind)omp_atv_contended 164 parameter(omp_atv_contended=3) 165 integer(kind=omp_alloctrait_val_kind)omp_atv_uncontended 166 parameter(omp_atv_uncontended=4) 167 integer(kind=omp_alloctrait_val_kind)omp_atv_serialized 168 parameter(omp_atv_serialized=5) 169 integer(kind=omp_alloctrait_val_kind)omp_atv_sequential 170 parameter(omp_atv_sequential=5) 171 integer(kind=omp_alloctrait_val_kind)omp_atv_private 172 parameter(omp_atv_private=6) 173 integer(kind=omp_alloctrait_val_kind)omp_atv_all 174 parameter(omp_atv_all=7) 175 integer(kind=omp_alloctrait_val_kind)omp_atv_thread 176 parameter(omp_atv_thread=8) 177 integer(kind=omp_alloctrait_val_kind)omp_atv_pteam 178 parameter(omp_atv_pteam=9) 179 integer(kind=omp_alloctrait_val_kind)omp_atv_cgroup 180 parameter(omp_atv_cgroup=10) 181 integer(kind=omp_alloctrait_val_kind)omp_atv_default_mem_fb 182 parameter(omp_atv_default_mem_fb=11) 183 integer(kind=omp_alloctrait_val_kind)omp_atv_null_fb 184 parameter(omp_atv_null_fb=12) 185 integer(kind=omp_alloctrait_val_kind)omp_atv_abort_fb 186 parameter(omp_atv_abort_fb=13) 187 integer(kind=omp_alloctrait_val_kind)omp_atv_allocator_fb 188 parameter(omp_atv_allocator_fb=14) 189 integer(kind=omp_alloctrait_val_kind)omp_atv_environment 190 parameter(omp_atv_environment=15) 191 integer(kind=omp_alloctrait_val_kind)omp_atv_nearest 192 parameter(omp_atv_nearest=16) 193 integer(kind=omp_alloctrait_val_kind)omp_atv_blocked 194 parameter(omp_atv_blocked=17) 195 integer(kind=omp_alloctrait_val_kind)omp_atv_interleaved 196 parameter(omp_atv_interleaved=18) 197 198 type omp_alloctrait 199 integer (kind=omp_alloctrait_key_kind) key 200 integer (kind=omp_alloctrait_val_kind) value 201 end type omp_alloctrait 202 203 integer(kind=omp_allocator_handle_kind)omp_null_allocator 204 parameter(omp_null_allocator=0) 205 integer(kind=omp_allocator_handle_kind)omp_default_mem_alloc 206 parameter(omp_default_mem_alloc=1) 207 integer(kind=omp_allocator_handle_kind)omp_large_cap_mem_alloc 208 parameter(omp_large_cap_mem_alloc=2) 209 integer(kind=omp_allocator_handle_kind)omp_const_mem_alloc 210 parameter(omp_const_mem_alloc=3) 211 integer(kind=omp_allocator_handle_kind)omp_high_bw_mem_alloc 212 parameter(omp_high_bw_mem_alloc=4) 213 integer(kind=omp_allocator_handle_kind)omp_low_lat_mem_alloc 214 parameter(omp_low_lat_mem_alloc=5) 215 integer(kind=omp_allocator_handle_kind)omp_cgroup_mem_alloc 216 parameter(omp_cgroup_mem_alloc=6) 217 integer(kind=omp_allocator_handle_kind)omp_pteam_mem_alloc 218 parameter(omp_pteam_mem_alloc=7) 219 integer(kind=omp_allocator_handle_kind)omp_thread_mem_alloc 220 parameter(omp_thread_mem_alloc=8) 221 ! Preview of target memory support 222 integer(omp_allocator_handle_kind)llvm_omp_target_host_mem_alloc 223 parameter(llvm_omp_target_host_mem_alloc=100) 224 integer(omp_allocator_handle_kind)llvm_omp_target_shared_mem_alloc 225 parameter(llvm_omp_target_shared_mem_alloc=101) 226 integer(omp_allocator_handle_kind)llvm_omp_target_device_mem_alloc 227 parameter(llvm_omp_target_device_mem_alloc=102) 228 229 integer(kind=omp_memspace_handle_kind)omp_default_mem_space 230 parameter(omp_default_mem_space=0) 231 integer(kind=omp_memspace_handle_kind)omp_large_cap_mem_space 232 parameter(omp_large_cap_mem_space=1) 233 integer(kind=omp_memspace_handle_kind)omp_const_mem_space 234 parameter(omp_const_mem_space=2) 235 integer(kind=omp_memspace_handle_kind)omp_high_bw_mem_space 236 parameter(omp_high_bw_mem_space=3) 237 integer(kind=omp_memspace_handle_kind)omp_low_lat_mem_space 238 parameter(omp_low_lat_mem_space=4) 239 ! Preview of target memory support 240 integer(omp_memspace_handle_kind)llvm_omp_target_host_mem_space 241 parameter(llvm_omp_target_host_mem_space=100) 242 integer(omp_memspace_handle_kind)llvm_omp_target_shared_mem_space 243 parameter(llvm_omp_target_shared_mem_space=101) 244 integer(omp_memspace_handle_kind)llvm_omp_target_device_mem_space 245 parameter(llvm_omp_target_device_mem_space=102) 246 247 integer(kind=omp_pause_resource_kind)omp_pause_resume 248 parameter(omp_pause_resume=0) 249 integer(kind=omp_pause_resource_kind)omp_pause_soft 250 parameter(omp_pause_soft=1) 251 integer(kind=omp_pause_resource_kind)omp_pause_hard 252 parameter(omp_pause_hard=2) 253 254 integer(kind=omp_interop_fr_kind)omp_ifr_cuda 255 parameter(omp_ifr_cuda=1) 256 integer(kind=omp_interop_fr_kind)omp_ifr_cuda_driver 257 parameter(omp_ifr_cuda_driver=2) 258 integer(kind=omp_interop_fr_kind)omp_ifr_opencl 259 parameter(omp_ifr_opencl=3) 260 integer(kind=omp_interop_fr_kind)omp_ifr_sycl 261 parameter(omp_ifr_sycl=4) 262 integer(kind=omp_interop_fr_kind)omp_ifr_hip 263 parameter(omp_ifr_hip=5) 264 integer(kind=omp_interop_fr_kind)omp_ifr_level_zero 265 parameter(omp_ifr_level_zero=6) 266 integer(kind=omp_interop_fr_kind)omp_ifr_last 267 parameter(omp_ifr_last=7) 268 269 integer(kind=omp_interop_kind)omp_interop_none 270 parameter(omp_interop_none=0) 271 272 interface 273 274! *** 275! *** omp_* entry points 276! *** 277 278 subroutine omp_set_num_threads(num_threads) bind(c) 279 import 280 integer (kind=omp_integer_kind), value :: num_threads 281 end subroutine omp_set_num_threads 282 283 subroutine omp_set_dynamic(dynamic_threads) bind(c) 284 import 285 logical (kind=omp_logical_kind), value :: dynamic_threads 286 end subroutine omp_set_dynamic 287 288 subroutine omp_set_nested(nested) bind(c) 289 import 290 logical (kind=omp_logical_kind), value :: nested 291 end subroutine omp_set_nested 292 293 function omp_get_num_threads() bind(c) 294 import 295 integer (kind=omp_integer_kind) omp_get_num_threads 296 end function omp_get_num_threads 297 298 function omp_get_max_threads() bind(c) 299 import 300 integer (kind=omp_integer_kind) omp_get_max_threads 301 end function omp_get_max_threads 302 303 function omp_get_thread_num() bind(c) 304 import 305 integer (kind=omp_integer_kind) omp_get_thread_num 306 end function omp_get_thread_num 307 308 function omp_get_num_procs() bind(c) 309 import 310 integer (kind=omp_integer_kind) omp_get_num_procs 311 end function omp_get_num_procs 312 313 function omp_in_parallel() bind(c) 314 import 315 logical (kind=omp_logical_kind) omp_in_parallel 316 end function omp_in_parallel 317 318 function omp_in_final() bind(c) 319 import 320 logical (kind=omp_logical_kind) omp_in_final 321 end function omp_in_final 322 323 function omp_get_dynamic() bind(c) 324 import 325 logical (kind=omp_logical_kind) omp_get_dynamic 326 end function omp_get_dynamic 327 328 function omp_get_nested() bind(c) 329 import 330 logical (kind=omp_logical_kind) omp_get_nested 331 end function omp_get_nested 332 333 function omp_get_thread_limit() bind(c) 334 import 335 integer (kind=omp_integer_kind) omp_get_thread_limit 336 end function omp_get_thread_limit 337 338 subroutine omp_set_max_active_levels(max_levels) bind(c) 339 import 340 integer (kind=omp_integer_kind), value :: max_levels 341 end subroutine omp_set_max_active_levels 342 343 function omp_get_max_active_levels() bind(c) 344 import 345 integer (kind=omp_integer_kind) omp_get_max_active_levels 346 end function omp_get_max_active_levels 347 348 function omp_get_level() bind(c) 349 import 350 integer (kind=omp_integer_kind) omp_get_level 351 end function omp_get_level 352 353 function omp_get_active_level() bind(c) 354 import 355 integer (kind=omp_integer_kind) omp_get_active_level 356 end function omp_get_active_level 357 358 function omp_get_ancestor_thread_num(level) bind(c) 359 import 360 integer (kind=omp_integer_kind) omp_get_ancestor_thread_num 361 integer (kind=omp_integer_kind), value :: level 362 end function omp_get_ancestor_thread_num 363 364 function omp_get_team_size(level) bind(c) 365 import 366 integer (kind=omp_integer_kind) omp_get_team_size 367 integer (kind=omp_integer_kind), value :: level 368 end function omp_get_team_size 369 370 subroutine omp_set_schedule(kind, chunk_size) bind(c) 371 import 372 integer (kind=omp_sched_kind), value :: kind 373 integer (kind=omp_integer_kind), value :: chunk_size 374 end subroutine omp_set_schedule 375 376 subroutine omp_get_schedule(kind, chunk_size) bind(c) 377 import 378 integer (kind=omp_sched_kind) kind 379 integer (kind=omp_integer_kind) chunk_size 380 end subroutine omp_get_schedule 381 382 function omp_get_proc_bind() bind(c) 383 import 384 integer (kind=omp_proc_bind_kind) omp_get_proc_bind 385 end function omp_get_proc_bind 386 387 function omp_get_num_places() bind(c) 388 import 389 integer (kind=omp_integer_kind) omp_get_num_places 390 end function omp_get_num_places 391 392 function omp_get_place_num_procs(place_num) bind(c) 393 import 394 integer (kind=omp_integer_kind), value :: place_num 395 integer (kind=omp_integer_kind) omp_get_place_num_procs 396 end function omp_get_place_num_procs 397 398 subroutine omp_get_place_proc_ids(place_num, ids) bind(c) 399 import 400 integer (kind=omp_integer_kind), value :: place_num 401 integer (kind=omp_integer_kind) ids(*) 402 end subroutine omp_get_place_proc_ids 403 404 function omp_get_place_num() bind(c) 405 import 406 integer (kind=omp_integer_kind) omp_get_place_num 407 end function omp_get_place_num 408 409 function omp_get_partition_num_places() bind(c) 410 import 411 integer (kind=omp_integer_kind) omp_get_partition_num_places 412 end function omp_get_partition_num_places 413 414 subroutine omp_get_partition_place_nums(place_nums) bind(c) 415 import 416 integer (kind=omp_integer_kind) place_nums(*) 417 end subroutine omp_get_partition_place_nums 418 419 function omp_get_wtime() bind(c) 420 double precision omp_get_wtime 421 end function omp_get_wtime 422 423 function omp_get_wtick() bind(c) 424 double precision omp_get_wtick 425 end function omp_get_wtick 426 427 function omp_get_default_device() bind(c) 428 import 429 integer (kind=omp_integer_kind) omp_get_default_device 430 end function omp_get_default_device 431 432 subroutine omp_set_default_device(device_num) bind(c) 433 import 434 integer (kind=omp_integer_kind), value :: device_num 435 end subroutine omp_set_default_device 436 437 function omp_get_num_devices() bind(c) 438 import 439 integer (kind=omp_integer_kind) omp_get_num_devices 440 end function omp_get_num_devices 441 442 function omp_get_num_teams() bind(c) 443 import 444 integer (kind=omp_integer_kind) omp_get_num_teams 445 end function omp_get_num_teams 446 447 function omp_get_team_num() bind(c) 448 import 449 integer (kind=omp_integer_kind) omp_get_team_num 450 end function omp_get_team_num 451 452 function omp_is_initial_device() bind(c) 453 import 454 logical (kind=omp_logical_kind) omp_is_initial_device 455 end function omp_is_initial_device 456 457 function omp_get_initial_device() bind(c) 458 import 459 integer (kind=omp_integer_kind) omp_get_initial_device 460 end function omp_get_initial_device 461 462 function omp_get_device_num() bind(c) 463 import 464 integer (kind=omp_integer_kind) omp_get_device_num 465 end function omp_get_device_num 466 467 function omp_pause_resource(kind, device_num) bind(c) 468 import 469 integer (kind=omp_pause_resource_kind), value :: kind 470 integer (kind=omp_integer_kind), value :: device_num 471 integer (kind=omp_integer_kind) omp_pause_resource 472 end function omp_pause_resource 473 474 function omp_pause_resource_all(kind) bind(c) 475 import 476 integer (kind=omp_pause_resource_kind), value :: kind 477 integer (kind=omp_integer_kind) omp_pause_resource_all 478 end function omp_pause_resource_all 479 480 function omp_get_supported_active_levels() bind(c) 481 import 482 integer(kind=omp_integer_kind)omp_get_supported_active_levels 483 end function omp_get_supported_active_levels 484 485 subroutine omp_fulfill_event(event) bind(c) 486 import 487 integer (kind=omp_event_handle_kind), value :: event 488 end subroutine omp_fulfill_event 489 490 subroutine omp_init_lock(svar) bind(c) 491!DIR$ IF(__INTEL_COMPILER.GE.1400) 492!DIR$ attributes known_intrinsic :: omp_init_lock 493!DIR$ ENDIF 494 import 495 integer (kind=omp_lock_kind) svar 496 end subroutine omp_init_lock 497 498 subroutine omp_destroy_lock(svar) bind(c) 499!DIR$ IF(__INTEL_COMPILER.GE.1400) 500!DIR$ attributes known_intrinsic :: omp_destroy_lock 501!DIR$ ENDIF 502 import 503 integer (kind=omp_lock_kind) svar 504 end subroutine omp_destroy_lock 505 506 subroutine omp_set_lock(svar) bind(c) 507!DIR$ IF(__INTEL_COMPILER.GE.1400) 508!DIR$ attributes known_intrinsic :: omp_set_lock 509!DIR$ ENDIF 510 import 511 integer (kind=omp_lock_kind) svar 512 end subroutine omp_set_lock 513 514 subroutine omp_unset_lock(svar) bind(c) 515!DIR$ IF(__INTEL_COMPILER.GE.1400) 516!DIR$ attributes known_intrinsic :: omp_unset_lock 517!DIR$ ENDIF 518 import 519 integer (kind=omp_lock_kind) svar 520 end subroutine omp_unset_lock 521 522 function omp_test_lock(svar) bind(c) 523!DIR$ IF(__INTEL_COMPILER.GE.1400) 524!DIR$ attributes known_intrinsic :: omp_test_lock 525!DIR$ ENDIF 526 import 527 logical (kind=omp_logical_kind) omp_test_lock 528 integer (kind=omp_lock_kind) svar 529 end function omp_test_lock 530 531 subroutine omp_init_nest_lock(nvar) bind(c) 532!DIR$ IF(__INTEL_COMPILER.GE.1400) 533!DIR$ attributes known_intrinsic :: omp_init_nest_lock 534!DIR$ ENDIF 535 import 536 integer (kind=omp_nest_lock_kind) nvar 537 end subroutine omp_init_nest_lock 538 539 subroutine omp_destroy_nest_lock(nvar) bind(c) 540!DIR$ IF(__INTEL_COMPILER.GE.1400) 541!DIR$ attributes known_intrinsic :: omp_destroy_nest_lock 542!DIR$ ENDIF 543 import 544 integer (kind=omp_nest_lock_kind) nvar 545 end subroutine omp_destroy_nest_lock 546 547 subroutine omp_set_nest_lock(nvar) bind(c) 548!DIR$ IF(__INTEL_COMPILER.GE.1400) 549!DIR$ attributes known_intrinsic :: omp_set_nest_lock 550!DIR$ ENDIF 551 import 552 integer (kind=omp_nest_lock_kind) nvar 553 end subroutine omp_set_nest_lock 554 555 subroutine omp_unset_nest_lock(nvar) bind(c) 556!DIR$ IF(__INTEL_COMPILER.GE.1400) 557!DIR$ attributes known_intrinsic :: omp_unset_nest_lock 558!DIR$ ENDIF 559 import 560 integer (kind=omp_nest_lock_kind) nvar 561 end subroutine omp_unset_nest_lock 562 563 function omp_test_nest_lock(nvar) bind(c) 564!DIR$ IF(__INTEL_COMPILER.GE.1400) 565!DIR$ attributes known_intrinsic :: omp_test_nest_lock 566!DIR$ ENDIF 567 import 568 integer (kind=omp_integer_kind) omp_test_nest_lock 569 integer (kind=omp_nest_lock_kind) nvar 570 end function omp_test_nest_lock 571 572 function omp_get_max_task_priority() bind(c) 573 import 574 integer (kind=omp_integer_kind) omp_get_max_task_priority 575 end function omp_get_max_task_priority 576 577 subroutine omp_init_lock_with_hint(svar, hint) bind(c) 578 import 579 integer (kind=omp_lock_kind) svar 580 integer (kind=omp_lock_hint_kind), value :: hint 581 end subroutine omp_init_lock_with_hint 582 583 subroutine omp_init_nest_lock_with_hint(nvar, hint) bind(c) 584 import 585 integer (kind=omp_nest_lock_kind) nvar 586 integer (kind=omp_lock_hint_kind), value :: hint 587 end subroutine omp_init_nest_lock_with_hint 588 589 function omp_control_tool(command, modifier, arg) bind(c) 590 import 591 integer (kind=omp_integer_kind) omp_control_tool 592 integer (kind=omp_control_tool_kind), value :: command 593 integer (kind=omp_control_tool_kind), value :: modifier 594 integer (kind=kmp_pointer_kind), optional :: arg 595 end function omp_control_tool 596 597 function omp_init_allocator(memspace, ntraits, traits) 598 import 599 integer (omp_allocator_handle_kind) omp_init_allocator 600 integer (omp_memspace_handle_kind) :: memspace 601 integer (omp_integer_kind) :: ntraits 602 type(omp_alloctrait), intent(in) :: traits(*) 603 end function omp_init_allocator 604 605 subroutine omp_destroy_allocator(allocator) bind(c) 606 import 607 integer (omp_allocator_handle_kind), value :: allocator 608 end subroutine omp_destroy_allocator 609 610 subroutine omp_set_default_allocator(allocator) bind(c) 611 import 612 integer (omp_allocator_handle_kind), value :: allocator 613 end subroutine omp_set_default_allocator 614 615 function omp_get_default_allocator() bind(c) 616 import 617 integer (omp_allocator_handle_kind) omp_get_default_allocator 618 end function omp_get_default_allocator 619 620 subroutine omp_set_affinity_format(format) 621 character (len=*) :: format 622 end subroutine omp_set_affinity_format 623 624 function omp_get_affinity_format(buffer) 625 import 626 character (len=*) :: buffer 627 integer (kind=kmp_size_t_kind) :: omp_get_affinity_format 628 end function omp_get_affinity_format 629 630 subroutine omp_display_affinity(format) 631 character (len=*) :: format 632 end subroutine omp_display_affinity 633 634 function omp_capture_affinity(buffer, format) 635 import 636 character (len=*) :: format 637 character (len=*) :: buffer 638 integer (kind=kmp_size_t_kind) :: omp_capture_affinity 639 end function omp_capture_affinity 640 641 subroutine omp_set_num_teams(num_teams) bind(c) 642 import 643 integer (kind=omp_integer_kind), value :: num_teams 644 end subroutine omp_set_num_teams 645 646 function omp_get_max_teams() bind(c) 647 import 648 integer (kind=omp_integer_kind) omp_get_max_teams 649 end function omp_get_max_teams 650 651 subroutine omp_set_teams_thread_limit(thread_limit) bind(c) 652 import 653 integer (kind=omp_integer_kind), value :: thread_limit 654 end subroutine omp_set_teams_thread_limit 655 656 function omp_get_teams_thread_limit() bind(c) 657 import 658 integer (kind=omp_integer_kind) omp_get_teams_thread_limit 659 end function omp_get_teams_thread_limit 660 661 subroutine omp_display_env(verbose) bind(c) 662 import 663 logical (kind=omp_logical_kind), value :: verbose 664 end subroutine omp_display_env 665 666 function omp_target_alloc(size, device_num) bind(c) 667 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t, c_int 668 type(c_ptr) omp_target_alloc 669 integer(c_size_t), value :: size 670 integer(c_int), value :: device_num 671 end function omp_target_alloc 672 673 subroutine omp_target_free(device_ptr, device_num) bind(c) 674 use, intrinsic :: iso_c_binding, only : c_ptr, c_int 675 type(c_ptr), value :: device_ptr 676 integer(c_int), value :: device_num 677 end subroutine omp_target_free 678 679 function omp_target_is_present(ptr, device_num) bind(c) 680 use, intrinsic :: iso_c_binding, only : c_ptr, c_int 681 integer(c_int) omp_target_is_present 682 type(c_ptr), value :: ptr 683 integer(c_int), value :: device_num 684 end function omp_target_is_present 685 686 function omp_target_memcpy(dst, src, length, dst_offset, & 687 & src_offset, dst_device_num, src_device_num) bind(c) 688 use, intrinsic :: iso_c_binding, only : c_ptr, c_int, c_size_t 689 integer(c_int) omp_target_memcpy 690 type(c_ptr), value :: dst, src 691 integer(c_size_t), value :: length, dst_offset, src_offset 692 integer(c_int), value :: dst_device_num, src_device_num 693 end function omp_target_memcpy 694 695 function omp_target_memcpy_rect(dst, src, element_size, & 696 & num_dims, volume, dst_offsets, src_offsets, dst_dimensions, & 697 & src_dimensions, dst_device_num, src_device_num) bind(c) 698 use, intrinsic :: iso_c_binding, only : c_ptr, c_int, c_size_t 699 integer(c_int) omp_target_memcpy_rect 700 type(c_ptr), value :: dst, src 701 integer(c_size_t), value :: element_size 702 integer(c_int), value :: num_dims, dst_device_num, & 703 & src_device_num 704 integer(c_size_t), intent(in) :: volume(*), dst_offsets(*), & 705 & src_offsets(*), dst_dimensions(*), src_dimensions(*) 706 end function omp_target_memcpy_rect 707 708 function omp_target_memcpy_async(dst, src, length, dst_offset, & 709 & src_offset, dst_device_num, src_device_num, depobj_count, & 710 & depobj_list) bind(c) 711 use, intrinsic :: iso_c_binding, only : c_ptr, c_int, c_size_t 712 import 713 integer(c_int) omp_target_memcpy_async 714 type(c_ptr), value :: dst, src 715 integer(c_size_t), value :: length, dst_offset, src_offset 716 integer(c_int), value :: dst_device_num, src_device_num, & 717 & depobj_count 718 integer(omp_depend_kind), optional :: depobj_list(*) 719 end function omp_target_memcpy_async 720 721 function omp_target_memcpy_rect_async(dst, src, element_size, & 722 & num_dims, volume, dst_offsets, src_offsets, dst_dimensions, & 723 & src_dimensions, dst_device_num, src_device_num, & 724 & depobj_count, depobj_list) bind(c) 725 use, intrinsic :: iso_c_binding, only : c_ptr, c_int, c_size_t 726 import 727 integer(c_int) omp_target_memcpy_rect_async 728 type(c_ptr), value :: dst, src 729 integer(c_size_t), value :: element_size 730 integer(c_int), value :: num_dims, dst_device_num, & 731 & src_device_num, depobj_count 732 integer(c_size_t), intent(in) :: volume(*), dst_offsets(*), & 733 & src_offsets(*), dst_dimensions(*), src_dimensions(*) 734 integer(omp_depend_kind), optional :: depobj_list(*) 735 end function omp_target_memcpy_rect_async 736 737 function omp_target_associate_ptr(host_ptr, device_ptr, size, & 738 & device_offset, device_num) bind(c) 739 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t, c_int 740 integer(c_int) omp_target_associate_ptr 741 type(c_ptr), value :: host_ptr, device_ptr 742 integer(c_size_t), value :: size, device_offset 743 integer(c_int), value :: device_num 744 end function omp_target_associate_ptr 745 746 function omp_get_mapped_ptr(ptr, device_num) bind(c) 747 use, intrinsic :: iso_c_binding, only : c_ptr, c_int 748 type(c_ptr) omp_get_mapped_ptr 749 type(c_ptr), value :: ptr 750 integer(c_int), value :: device_num 751 end function omp_get_mapped_ptr 752 753 function omp_target_disassociate_ptr(ptr, device_num) bind(c) 754 use, intrinsic :: iso_c_binding, only : c_ptr, c_int 755 integer(c_int) omp_target_disassociate_ptr 756 type(c_ptr), value :: ptr 757 integer(c_int), value :: device_num 758 end function omp_target_disassociate_ptr 759 760 function omp_target_is_accessible(ptr, size, device_num) bind(c) 761 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t, c_int 762 integer(c_int) omp_target_is_accessible 763 type(c_ptr), value :: ptr 764 integer(c_size_t), value :: size 765 integer(c_int), value :: device_num 766 end function omp_target_is_accessible 767 768 function omp_alloc(size, allocator) bind(c) 769 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t 770 import :: omp_allocator_handle_kind 771 type(c_ptr) omp_alloc 772 integer(c_size_t), value :: size 773 integer(omp_allocator_handle_kind), value :: allocator 774 end function omp_alloc 775 776 function omp_aligned_alloc(alignment, size, allocator) bind(c) 777 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t 778 import :: omp_allocator_handle_kind 779 type(c_ptr) omp_aligned_alloc 780 integer(c_size_t), value :: alignment, size 781 integer(omp_allocator_handle_kind), value :: allocator 782 end function omp_aligned_alloc 783 784 function omp_calloc(nmemb, size, allocator) bind(c) 785 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t 786 import :: omp_allocator_handle_kind 787 type(c_ptr) omp_calloc 788 integer(c_size_t), value :: nmemb, size 789 integer(omp_allocator_handle_kind), value :: allocator 790 end function omp_calloc 791 792 function omp_aligned_calloc(alignment, nmemb, size, & 793 & allocator) bind(c) 794 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t 795 import :: omp_allocator_handle_kind 796 type(c_ptr) omp_aligned_calloc 797 integer(c_size_t), value :: alignment, nmemb, size 798 integer(omp_allocator_handle_kind), value :: allocator 799 end function omp_aligned_calloc 800 801 function omp_realloc(ptr, size, allocator, & 802 & free_allocator) bind(c) 803 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t 804 import :: omp_allocator_handle_kind 805 type(c_ptr) omp_realloc 806 type(c_ptr), value :: ptr 807 integer(c_size_t), value :: size 808 integer(omp_allocator_handle_kind), value :: allocator 809 integer(omp_allocator_handle_kind), value :: free_allocator 810 end function omp_realloc 811 812 subroutine omp_free(ptr, allocator) bind(c) 813 use, intrinsic :: iso_c_binding, only : c_ptr 814 import :: omp_allocator_handle_kind 815 type(c_ptr), value :: ptr 816 integer(omp_allocator_handle_kind), value :: allocator 817 end subroutine omp_free 818 819 function omp_in_explicit_task() bind(c) 820 import 821 logical (kind=omp_logical_kind) omp_in_explicit_task 822 end function omp_in_explicit_task 823 824! *** 825! *** kmp_* entry points 826! *** 827 828 subroutine kmp_set_stacksize(size) bind(c) 829 import 830 integer (kind=omp_integer_kind), value :: size 831 end subroutine kmp_set_stacksize 832 833 subroutine kmp_set_stacksize_s(size) bind(c) 834 import 835 integer (kind=kmp_size_t_kind), value :: size 836 end subroutine kmp_set_stacksize_s 837 838 subroutine kmp_set_blocktime(msec) bind(c) 839 import 840 integer (kind=omp_integer_kind), value :: msec 841 end subroutine kmp_set_blocktime 842 843 subroutine kmp_set_library_serial() bind(c) 844 end subroutine kmp_set_library_serial 845 846 subroutine kmp_set_library_turnaround() bind(c) 847 end subroutine kmp_set_library_turnaround 848 849 subroutine kmp_set_library_throughput() bind(c) 850 end subroutine kmp_set_library_throughput 851 852 subroutine kmp_set_library(libnum) bind(c) 853 import 854 integer (kind=omp_integer_kind), value :: libnum 855 end subroutine kmp_set_library 856 857 subroutine kmp_set_defaults(string) bind(c) 858 character string(*) 859 end subroutine kmp_set_defaults 860 861 function kmp_get_stacksize() bind(c) 862 import 863 integer (kind=omp_integer_kind) kmp_get_stacksize 864 end function kmp_get_stacksize 865 866 function kmp_get_stacksize_s() bind(c) 867 import 868 integer (kind=kmp_size_t_kind) kmp_get_stacksize_s 869 end function kmp_get_stacksize_s 870 871 function kmp_get_blocktime() bind(c) 872 import 873 integer (kind=omp_integer_kind) kmp_get_blocktime 874 end function kmp_get_blocktime 875 876 function kmp_get_library() bind(c) 877 import 878 integer (kind=omp_integer_kind) kmp_get_library 879 end function kmp_get_library 880 881 subroutine kmp_set_disp_num_buffers(num) bind(c) 882 import 883 integer (kind=omp_integer_kind), value :: num 884 end subroutine kmp_set_disp_num_buffers 885 886 function kmp_set_affinity(mask) bind(c) 887 import 888 integer (kind=omp_integer_kind) kmp_set_affinity 889 integer (kind=kmp_affinity_mask_kind) mask 890 end function kmp_set_affinity 891 892 function kmp_get_affinity(mask) bind(c) 893 import 894 integer (kind=omp_integer_kind) kmp_get_affinity 895 integer (kind=kmp_affinity_mask_kind) mask 896 end function kmp_get_affinity 897 898 function kmp_get_affinity_max_proc() bind(c) 899 import 900 integer (kind=omp_integer_kind) kmp_get_affinity_max_proc 901 end function kmp_get_affinity_max_proc 902 903 subroutine kmp_create_affinity_mask(mask) bind(c) 904 import 905 integer (kind=kmp_affinity_mask_kind) mask 906 end subroutine kmp_create_affinity_mask 907 908 subroutine kmp_destroy_affinity_mask(mask) bind(c) 909 import 910 integer (kind=kmp_affinity_mask_kind) mask 911 end subroutine kmp_destroy_affinity_mask 912 913 function kmp_set_affinity_mask_proc(proc, mask) bind(c) 914 import 915 integer (kind=omp_integer_kind) kmp_set_affinity_mask_proc 916 integer (kind=omp_integer_kind), value :: proc 917 integer (kind=kmp_affinity_mask_kind) mask 918 end function kmp_set_affinity_mask_proc 919 920 function kmp_unset_affinity_mask_proc(proc, mask) bind(c) 921 import 922 integer (kind=omp_integer_kind) kmp_unset_affinity_mask_proc 923 integer (kind=omp_integer_kind), value :: proc 924 integer (kind=kmp_affinity_mask_kind) mask 925 end function kmp_unset_affinity_mask_proc 926 927 function kmp_get_affinity_mask_proc(proc, mask) bind(c) 928 import 929 integer (kind=omp_integer_kind) kmp_get_affinity_mask_proc 930 integer (kind=omp_integer_kind), value :: proc 931 integer (kind=kmp_affinity_mask_kind) mask 932 end function kmp_get_affinity_mask_proc 933 934 function kmp_malloc(size) bind(c) 935 import 936 integer (kind=kmp_pointer_kind) kmp_malloc 937 integer (kind=kmp_size_t_kind), value :: size 938 end function kmp_malloc 939 940 function kmp_aligned_malloc(size, alignment) bind(c) 941 import 942 integer (kind=kmp_pointer_kind) kmp_aligned_malloc 943 integer (kind=kmp_size_t_kind), value :: size 944 integer (kind=kmp_size_t_kind), value :: alignment 945 end function kmp_aligned_malloc 946 947 function kmp_calloc(nelem, elsize) bind(c) 948 import 949 integer (kind=kmp_pointer_kind) kmp_calloc 950 integer (kind=kmp_size_t_kind), value :: nelem 951 integer (kind=kmp_size_t_kind), value :: elsize 952 end function kmp_calloc 953 954 function kmp_realloc(ptr, size) bind(c) 955 import 956 integer (kind=kmp_pointer_kind) kmp_realloc 957 integer (kind=kmp_pointer_kind), value :: ptr 958 integer (kind=kmp_size_t_kind), value :: size 959 end function kmp_realloc 960 961 subroutine kmp_free(ptr) bind(c) 962 import 963 integer (kind=kmp_pointer_kind), value :: ptr 964 end subroutine kmp_free 965 966 subroutine kmp_set_warnings_on() bind(c) 967 end subroutine kmp_set_warnings_on 968 969 subroutine kmp_set_warnings_off() bind(c) 970 end subroutine kmp_set_warnings_off 971 end interface 972 973!DIR$ IF DEFINED (__INTEL_OFFLOAD) 974 975!DIR$ IF(__INTEL_COMPILER.LT.1900) 976!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_num_threads 977!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_dynamic 978!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_nested 979!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_num_threads 980!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_max_threads 981!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_thread_num 982!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_num_procs 983!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_in_parallel 984!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_in_final 985!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_dynamic 986!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_nested 987!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_thread_limit 988!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_max_active_levels 989!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_max_active_levels 990!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_level 991!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_active_level 992!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_ancestor_thread_num 993!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_team_size 994!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_schedule 995!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_schedule 996!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_proc_bind 997!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_wtime 998!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_wtick 999!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_default_device 1000!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_default_device 1001!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_is_initial_device 1002!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_initial_device 1003!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_num_devices 1004!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_device_num 1005!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_pause_resource 1006!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_pause_resource_all 1007!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_supported_active_levels 1008!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_fulfill_event 1009!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_num_teams 1010!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_team_num 1011!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_init_lock 1012!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_destroy_lock 1013!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_lock 1014!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_unset_lock 1015!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_test_lock 1016!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_init_nest_lock 1017!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_destroy_nest_lock 1018!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_nest_lock 1019!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_unset_nest_lock 1020!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_test_nest_lock 1021!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_max_task_priority 1022!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_affinity_format 1023!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_affinity_format 1024!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_display_affinity 1025!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_capture_affinity 1026!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_stacksize 1027!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_stacksize_s 1028!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_blocktime 1029!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_library_serial 1030!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_library_turnaround 1031!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_library_throughput 1032!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_library 1033!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_defaults 1034!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_stacksize 1035!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_stacksize_s 1036!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_blocktime 1037!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_library 1038!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_disp_num_buffers 1039!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_affinity 1040!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_affinity 1041!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_affinity_max_proc 1042!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_create_affinity_mask 1043!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_destroy_affinity_mask 1044!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_affinity_mask_proc 1045!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_unset_affinity_mask_proc 1046!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_affinity_mask_proc 1047!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_malloc 1048!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_aligned_malloc 1049!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_calloc 1050!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_realloc 1051!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_free 1052!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_warnings_on 1053!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_warnings_off 1054!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_init_lock_with_hint 1055!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_init_nest_lock_with_hint 1056!DIR$ ENDIF 1057 1058!DIR$ IF(__INTEL_COMPILER.GE.1400) 1059!$omp declare target(omp_set_num_threads ) 1060!$omp declare target(omp_set_dynamic ) 1061!$omp declare target(omp_set_nested ) 1062!$omp declare target(omp_get_num_threads ) 1063!$omp declare target(omp_get_max_threads ) 1064!$omp declare target(omp_get_thread_num ) 1065!$omp declare target(omp_get_num_procs ) 1066!$omp declare target(omp_in_parallel ) 1067!$omp declare target(omp_in_final ) 1068!$omp declare target(omp_get_dynamic ) 1069!$omp declare target(omp_get_nested ) 1070!$omp declare target(omp_get_thread_limit ) 1071!$omp declare target(omp_set_max_active_levels ) 1072!$omp declare target(omp_get_max_active_levels ) 1073!$omp declare target(omp_get_level ) 1074!$omp declare target(omp_get_active_level ) 1075!$omp declare target(omp_get_ancestor_thread_num ) 1076!$omp declare target(omp_get_team_size ) 1077!$omp declare target(omp_set_schedule ) 1078!$omp declare target(omp_get_schedule ) 1079!$omp declare target(omp_get_proc_bind ) 1080!$omp declare target(omp_get_wtime ) 1081!$omp declare target(omp_get_wtick ) 1082!$omp declare target(omp_get_default_device ) 1083!$omp declare target(omp_set_default_device ) 1084!$omp declare target(omp_is_initial_device ) 1085!$omp declare target(omp_get_initial_device ) 1086!$omp declare target(omp_get_num_devices ) 1087!$omp declare target(omp_get_device_num ) 1088!$omp declare target(omp_pause_resource ) 1089!$omp declare target(omp_pause_resource_all ) 1090!$omp declare target(omp_get_supported_active_levels ) 1091!$omp declare target(omp_fulfill_event) 1092!$omp declare target(omp_get_num_teams ) 1093!$omp declare target(omp_get_team_num ) 1094!$omp declare target(omp_init_lock ) 1095!$omp declare target(omp_destroy_lock ) 1096!$omp declare target(omp_set_lock ) 1097!$omp declare target(omp_unset_lock ) 1098!$omp declare target(omp_test_lock ) 1099!$omp declare target(omp_init_nest_lock ) 1100!$omp declare target(omp_destroy_nest_lock ) 1101!$omp declare target(omp_set_nest_lock ) 1102!$omp declare target(omp_unset_nest_lock ) 1103!$omp declare target(omp_test_nest_lock ) 1104!$omp declare target(omp_get_max_task_priority ) 1105!$omp declare target(omp_set_affinity_format ) 1106!$omp declare target(omp_get_affinity_format ) 1107!$omp declare target(omp_display_affinity ) 1108!$omp declare target(omp_capture_affinity ) 1109!$omp declare target(kmp_set_stacksize ) 1110!$omp declare target(kmp_set_stacksize_s ) 1111!$omp declare target(kmp_set_blocktime ) 1112!$omp declare target(kmp_set_library_serial ) 1113!$omp declare target(kmp_set_library_turnaround ) 1114!$omp declare target(kmp_set_library_throughput ) 1115!$omp declare target(kmp_set_library ) 1116!$omp declare target(kmp_set_defaults ) 1117!$omp declare target(kmp_get_stacksize ) 1118!$omp declare target(kmp_get_stacksize_s ) 1119!$omp declare target(kmp_get_blocktime ) 1120!$omp declare target(kmp_get_library ) 1121!$omp declare target(kmp_set_disp_num_buffers ) 1122!$omp declare target(kmp_set_affinity ) 1123!$omp declare target(kmp_get_affinity ) 1124!$omp declare target(kmp_get_affinity_max_proc ) 1125!$omp declare target(kmp_create_affinity_mask ) 1126!$omp declare target(kmp_destroy_affinity_mask ) 1127!$omp declare target(kmp_set_affinity_mask_proc ) 1128!$omp declare target(kmp_unset_affinity_mask_proc ) 1129!$omp declare target(kmp_get_affinity_mask_proc ) 1130!$omp declare target(kmp_malloc ) 1131!$omp declare target(kmp_aligned_malloc ) 1132!$omp declare target(kmp_calloc ) 1133!$omp declare target(kmp_realloc ) 1134!$omp declare target(kmp_free ) 1135!$omp declare target(kmp_set_warnings_on ) 1136!$omp declare target(kmp_set_warnings_off ) 1137!$omp declare target(omp_init_lock_with_hint ) 1138!$omp declare target(omp_init_nest_lock_with_hint ) 1139!DIR$ ENDIF 1140!DIR$ ENDIF 1141