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 integer(omp_allocator_handle_kind)llvm_omp_target_host_mem_alloc 222 parameter(llvm_omp_target_host_mem_alloc=100) 223 integer(omp_allocator_handle_kind)llvm_omp_target_shared_mem_alloc 224 parameter(llvm_omp_target_shared_mem_alloc=101) 225 integer(omp_allocator_handle_kind)llvm_omp_target_device_mem_alloc 226 parameter(llvm_omp_target_device_mem_alloc=102) 227 228 integer(kind=omp_memspace_handle_kind)omp_default_mem_space 229 parameter(omp_default_mem_space=0) 230 integer(kind=omp_memspace_handle_kind)omp_large_cap_mem_space 231 parameter(omp_large_cap_mem_space=1) 232 integer(kind=omp_memspace_handle_kind)omp_const_mem_space 233 parameter(omp_const_mem_space=2) 234 integer(kind=omp_memspace_handle_kind)omp_high_bw_mem_space 235 parameter(omp_high_bw_mem_space=3) 236 integer(kind=omp_memspace_handle_kind)omp_low_lat_mem_space 237 parameter(omp_low_lat_mem_space=4) 238 integer(omp_memspace_handle_kind)llvm_omp_target_host_mem_space 239 parameter(llvm_omp_target_host_mem_space=100) 240 integer(omp_memspace_handle_kind)llvm_omp_target_shared_mem_space 241 parameter(llvm_omp_target_shared_mem_space=101) 242 integer(omp_memspace_handle_kind)llvm_omp_target_device_mem_space 243 parameter(llvm_omp_target_device_mem_space=102) 244 245 integer(kind=omp_pause_resource_kind)omp_pause_resume 246 parameter(omp_pause_resume=0) 247 integer(kind=omp_pause_resource_kind)omp_pause_soft 248 parameter(omp_pause_soft=1) 249 integer(kind=omp_pause_resource_kind)omp_pause_hard 250 parameter(omp_pause_hard=2) 251 252 integer(kind=omp_interop_fr_kind)omp_ifr_cuda 253 parameter(omp_ifr_cuda=1) 254 integer(kind=omp_interop_fr_kind)omp_ifr_cuda_driver 255 parameter(omp_ifr_cuda_driver=2) 256 integer(kind=omp_interop_fr_kind)omp_ifr_opencl 257 parameter(omp_ifr_opencl=3) 258 integer(kind=omp_interop_fr_kind)omp_ifr_sycl 259 parameter(omp_ifr_sycl=4) 260 integer(kind=omp_interop_fr_kind)omp_ifr_hip 261 parameter(omp_ifr_hip=5) 262 integer(kind=omp_interop_fr_kind)omp_ifr_level_zero 263 parameter(omp_ifr_level_zero=6) 264 integer(kind=omp_interop_fr_kind)omp_ifr_last 265 parameter(omp_ifr_last=7) 266 267 integer(kind=omp_interop_kind)omp_interop_none 268 parameter(omp_interop_none=0) 269 270 interface 271 272! *** 273! *** omp_* entry points 274! *** 275 276 subroutine omp_set_num_threads(num_threads) bind(c) 277 import 278 integer (kind=omp_integer_kind), value :: num_threads 279 end subroutine omp_set_num_threads 280 281 subroutine omp_set_dynamic(dynamic_threads) bind(c) 282 import 283 logical (kind=omp_logical_kind), value :: dynamic_threads 284 end subroutine omp_set_dynamic 285 286 subroutine omp_set_nested(nested) bind(c) 287 import 288 logical (kind=omp_logical_kind), value :: nested 289 end subroutine omp_set_nested 290 291 function omp_get_num_threads() bind(c) 292 import 293 integer (kind=omp_integer_kind) omp_get_num_threads 294 end function omp_get_num_threads 295 296 function omp_get_max_threads() bind(c) 297 import 298 integer (kind=omp_integer_kind) omp_get_max_threads 299 end function omp_get_max_threads 300 301 function omp_get_thread_num() bind(c) 302 import 303 integer (kind=omp_integer_kind) omp_get_thread_num 304 end function omp_get_thread_num 305 306 function omp_get_num_procs() bind(c) 307 import 308 integer (kind=omp_integer_kind) omp_get_num_procs 309 end function omp_get_num_procs 310 311 function omp_in_parallel() bind(c) 312 import 313 logical (kind=omp_logical_kind) omp_in_parallel 314 end function omp_in_parallel 315 316 function omp_in_final() bind(c) 317 import 318 logical (kind=omp_logical_kind) omp_in_final 319 end function omp_in_final 320 321 function omp_get_dynamic() bind(c) 322 import 323 logical (kind=omp_logical_kind) omp_get_dynamic 324 end function omp_get_dynamic 325 326 function omp_get_nested() bind(c) 327 import 328 logical (kind=omp_logical_kind) omp_get_nested 329 end function omp_get_nested 330 331 function omp_get_thread_limit() bind(c) 332 import 333 integer (kind=omp_integer_kind) omp_get_thread_limit 334 end function omp_get_thread_limit 335 336 subroutine omp_set_max_active_levels(max_levels) bind(c) 337 import 338 integer (kind=omp_integer_kind), value :: max_levels 339 end subroutine omp_set_max_active_levels 340 341 function omp_get_max_active_levels() bind(c) 342 import 343 integer (kind=omp_integer_kind) omp_get_max_active_levels 344 end function omp_get_max_active_levels 345 346 function omp_get_level() bind(c) 347 import 348 integer (kind=omp_integer_kind) omp_get_level 349 end function omp_get_level 350 351 function omp_get_active_level() bind(c) 352 import 353 integer (kind=omp_integer_kind) omp_get_active_level 354 end function omp_get_active_level 355 356 function omp_get_ancestor_thread_num(level) bind(c) 357 import 358 integer (kind=omp_integer_kind) omp_get_ancestor_thread_num 359 integer (kind=omp_integer_kind), value :: level 360 end function omp_get_ancestor_thread_num 361 362 function omp_get_team_size(level) bind(c) 363 import 364 integer (kind=omp_integer_kind) omp_get_team_size 365 integer (kind=omp_integer_kind), value :: level 366 end function omp_get_team_size 367 368 subroutine omp_set_schedule(kind, chunk_size) bind(c) 369 import 370 integer (kind=omp_sched_kind), value :: kind 371 integer (kind=omp_integer_kind), value :: chunk_size 372 end subroutine omp_set_schedule 373 374 subroutine omp_get_schedule(kind, chunk_size) bind(c) 375 import 376 integer (kind=omp_sched_kind) kind 377 integer (kind=omp_integer_kind) chunk_size 378 end subroutine omp_get_schedule 379 380 function omp_get_proc_bind() bind(c) 381 import 382 integer (kind=omp_proc_bind_kind) omp_get_proc_bind 383 end function omp_get_proc_bind 384 385 function omp_get_num_places() bind(c) 386 import 387 integer (kind=omp_integer_kind) omp_get_num_places 388 end function omp_get_num_places 389 390 function omp_get_place_num_procs(place_num) bind(c) 391 import 392 integer (kind=omp_integer_kind), value :: place_num 393 integer (kind=omp_integer_kind) omp_get_place_num_procs 394 end function omp_get_place_num_procs 395 396 subroutine omp_get_place_proc_ids(place_num, ids) bind(c) 397 import 398 integer (kind=omp_integer_kind), value :: place_num 399 integer (kind=omp_integer_kind) ids(*) 400 end subroutine omp_get_place_proc_ids 401 402 function omp_get_place_num() bind(c) 403 import 404 integer (kind=omp_integer_kind) omp_get_place_num 405 end function omp_get_place_num 406 407 function omp_get_partition_num_places() bind(c) 408 import 409 integer (kind=omp_integer_kind) omp_get_partition_num_places 410 end function omp_get_partition_num_places 411 412 subroutine omp_get_partition_place_nums(place_nums) bind(c) 413 import 414 integer (kind=omp_integer_kind) place_nums(*) 415 end subroutine omp_get_partition_place_nums 416 417 function omp_get_wtime() bind(c) 418 double precision omp_get_wtime 419 end function omp_get_wtime 420 421 function omp_get_wtick() bind(c) 422 double precision omp_get_wtick 423 end function omp_get_wtick 424 425 function omp_get_default_device() bind(c) 426 import 427 integer (kind=omp_integer_kind) omp_get_default_device 428 end function omp_get_default_device 429 430 subroutine omp_set_default_device(device_num) bind(c) 431 import 432 integer (kind=omp_integer_kind), value :: device_num 433 end subroutine omp_set_default_device 434 435 function omp_get_num_devices() bind(c) 436 import 437 integer (kind=omp_integer_kind) omp_get_num_devices 438 end function omp_get_num_devices 439 440 function omp_get_num_teams() bind(c) 441 import 442 integer (kind=omp_integer_kind) omp_get_num_teams 443 end function omp_get_num_teams 444 445 function omp_get_team_num() bind(c) 446 import 447 integer (kind=omp_integer_kind) omp_get_team_num 448 end function omp_get_team_num 449 450 function omp_is_initial_device() bind(c) 451 import 452 logical (kind=omp_logical_kind) omp_is_initial_device 453 end function omp_is_initial_device 454 455 function omp_get_initial_device() bind(c) 456 import 457 integer (kind=omp_integer_kind) omp_get_initial_device 458 end function omp_get_initial_device 459 460 function omp_get_device_num() bind(c) 461 import 462 integer (kind=omp_integer_kind) omp_get_device_num 463 end function omp_get_device_num 464 465 function omp_pause_resource(kind, device_num) bind(c) 466 import 467 integer (kind=omp_pause_resource_kind), value :: kind 468 integer (kind=omp_integer_kind), value :: device_num 469 integer (kind=omp_integer_kind) omp_pause_resource 470 end function omp_pause_resource 471 472 function omp_pause_resource_all(kind) bind(c) 473 import 474 integer (kind=omp_pause_resource_kind), value :: kind 475 integer (kind=omp_integer_kind) omp_pause_resource_all 476 end function omp_pause_resource_all 477 478 function omp_get_supported_active_levels() bind(c) 479 import 480 integer(kind=omp_integer_kind)omp_get_supported_active_levels 481 end function omp_get_supported_active_levels 482 483 subroutine omp_fulfill_event(event) bind(c) 484 import 485 integer (kind=omp_event_handle_kind), value :: event 486 end subroutine omp_fulfill_event 487 488 subroutine omp_init_lock(svar) bind(c) 489!DIR$ IF(__INTEL_COMPILER.GE.1400) 490!DIR$ attributes known_intrinsic :: omp_init_lock 491!DIR$ ENDIF 492 import 493 integer (kind=omp_lock_kind) svar 494 end subroutine omp_init_lock 495 496 subroutine omp_destroy_lock(svar) bind(c) 497!DIR$ IF(__INTEL_COMPILER.GE.1400) 498!DIR$ attributes known_intrinsic :: omp_destroy_lock 499!DIR$ ENDIF 500 import 501 integer (kind=omp_lock_kind) svar 502 end subroutine omp_destroy_lock 503 504 subroutine omp_set_lock(svar) bind(c) 505!DIR$ IF(__INTEL_COMPILER.GE.1400) 506!DIR$ attributes known_intrinsic :: omp_set_lock 507!DIR$ ENDIF 508 import 509 integer (kind=omp_lock_kind) svar 510 end subroutine omp_set_lock 511 512 subroutine omp_unset_lock(svar) bind(c) 513!DIR$ IF(__INTEL_COMPILER.GE.1400) 514!DIR$ attributes known_intrinsic :: omp_unset_lock 515!DIR$ ENDIF 516 import 517 integer (kind=omp_lock_kind) svar 518 end subroutine omp_unset_lock 519 520 function omp_test_lock(svar) bind(c) 521!DIR$ IF(__INTEL_COMPILER.GE.1400) 522!DIR$ attributes known_intrinsic :: omp_test_lock 523!DIR$ ENDIF 524 import 525 logical (kind=omp_logical_kind) omp_test_lock 526 integer (kind=omp_lock_kind) svar 527 end function omp_test_lock 528 529 subroutine omp_init_nest_lock(nvar) bind(c) 530!DIR$ IF(__INTEL_COMPILER.GE.1400) 531!DIR$ attributes known_intrinsic :: omp_init_nest_lock 532!DIR$ ENDIF 533 import 534 integer (kind=omp_nest_lock_kind) nvar 535 end subroutine omp_init_nest_lock 536 537 subroutine omp_destroy_nest_lock(nvar) bind(c) 538!DIR$ IF(__INTEL_COMPILER.GE.1400) 539!DIR$ attributes known_intrinsic :: omp_destroy_nest_lock 540!DIR$ ENDIF 541 import 542 integer (kind=omp_nest_lock_kind) nvar 543 end subroutine omp_destroy_nest_lock 544 545 subroutine omp_set_nest_lock(nvar) bind(c) 546!DIR$ IF(__INTEL_COMPILER.GE.1400) 547!DIR$ attributes known_intrinsic :: omp_set_nest_lock 548!DIR$ ENDIF 549 import 550 integer (kind=omp_nest_lock_kind) nvar 551 end subroutine omp_set_nest_lock 552 553 subroutine omp_unset_nest_lock(nvar) bind(c) 554!DIR$ IF(__INTEL_COMPILER.GE.1400) 555!DIR$ attributes known_intrinsic :: omp_unset_nest_lock 556!DIR$ ENDIF 557 import 558 integer (kind=omp_nest_lock_kind) nvar 559 end subroutine omp_unset_nest_lock 560 561 function omp_test_nest_lock(nvar) bind(c) 562!DIR$ IF(__INTEL_COMPILER.GE.1400) 563!DIR$ attributes known_intrinsic :: omp_test_nest_lock 564!DIR$ ENDIF 565 import 566 integer (kind=omp_integer_kind) omp_test_nest_lock 567 integer (kind=omp_nest_lock_kind) nvar 568 end function omp_test_nest_lock 569 570 function omp_get_max_task_priority() bind(c) 571 import 572 integer (kind=omp_integer_kind) omp_get_max_task_priority 573 end function omp_get_max_task_priority 574 575 subroutine omp_init_lock_with_hint(svar, hint) bind(c) 576 import 577 integer (kind=omp_lock_kind) svar 578 integer (kind=omp_lock_hint_kind), value :: hint 579 end subroutine omp_init_lock_with_hint 580 581 subroutine omp_init_nest_lock_with_hint(nvar, hint) bind(c) 582 import 583 integer (kind=omp_nest_lock_kind) nvar 584 integer (kind=omp_lock_hint_kind), value :: hint 585 end subroutine omp_init_nest_lock_with_hint 586 587 function omp_control_tool(command, modifier, arg) bind(c) 588 import 589 integer (kind=omp_integer_kind) omp_control_tool 590 integer (kind=omp_control_tool_kind), value :: command 591 integer (kind=omp_control_tool_kind), value :: modifier 592 integer (kind=kmp_pointer_kind), optional :: arg 593 end function omp_control_tool 594 595 function omp_init_allocator(memspace, ntraits, traits) 596 import 597 integer (omp_allocator_handle_kind) omp_init_allocator 598 integer (omp_memspace_handle_kind) :: memspace 599 integer (omp_integer_kind) :: ntraits 600 type(omp_alloctrait), intent(in) :: traits(*) 601 end function omp_init_allocator 602 603 subroutine omp_destroy_allocator(allocator) bind(c) 604 import 605 integer (omp_allocator_handle_kind), value :: allocator 606 end subroutine omp_destroy_allocator 607 608 subroutine omp_set_default_allocator(allocator) bind(c) 609 import 610 integer (omp_allocator_handle_kind), value :: allocator 611 end subroutine omp_set_default_allocator 612 613 function omp_get_default_allocator() bind(c) 614 import 615 integer (omp_allocator_handle_kind) omp_get_default_allocator 616 end function omp_get_default_allocator 617 618 subroutine omp_set_affinity_format(format) 619 character (len=*) :: format 620 end subroutine omp_set_affinity_format 621 622 function omp_get_affinity_format(buffer) 623 import 624 character (len=*) :: buffer 625 integer (kind=kmp_size_t_kind) :: omp_get_affinity_format 626 end function omp_get_affinity_format 627 628 subroutine omp_display_affinity(format) 629 character (len=*) :: format 630 end subroutine omp_display_affinity 631 632 function omp_capture_affinity(buffer, format) 633 import 634 character (len=*) :: format 635 character (len=*) :: buffer 636 integer (kind=kmp_size_t_kind) :: omp_capture_affinity 637 end function omp_capture_affinity 638 639 subroutine omp_set_num_teams(num_teams) bind(c) 640 import 641 integer (kind=omp_integer_kind), value :: num_teams 642 end subroutine omp_set_num_teams 643 644 function omp_get_max_teams() bind(c) 645 import 646 integer (kind=omp_integer_kind) omp_get_max_teams 647 end function omp_get_max_teams 648 649 subroutine omp_set_teams_thread_limit(thread_limit) bind(c) 650 import 651 integer (kind=omp_integer_kind), value :: thread_limit 652 end subroutine omp_set_teams_thread_limit 653 654 function omp_get_teams_thread_limit() bind(c) 655 import 656 integer (kind=omp_integer_kind) omp_get_teams_thread_limit 657 end function omp_get_teams_thread_limit 658 659 subroutine omp_display_env(verbose) bind(c) 660 import 661 logical (kind=omp_logical_kind), value :: verbose 662 end subroutine omp_display_env 663 664 function omp_target_alloc(size, device_num) bind(c) 665 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t, c_int 666 type(c_ptr) omp_target_alloc 667 integer(c_size_t), value :: size 668 integer(c_int), value :: device_num 669 end function omp_target_alloc 670 671 subroutine omp_target_free(device_ptr, device_num) bind(c) 672 use, intrinsic :: iso_c_binding, only : c_ptr, c_int 673 type(c_ptr), value :: device_ptr 674 integer(c_int), value :: device_num 675 end subroutine omp_target_free 676 677 function omp_target_is_present(ptr, device_num) bind(c) 678 use, intrinsic :: iso_c_binding, only : c_ptr, c_int 679 integer(c_int) omp_target_is_present 680 type(c_ptr), value :: ptr 681 integer(c_int), value :: device_num 682 end function omp_target_is_present 683 684 function omp_target_memcpy(dst, src, length, dst_offset, & 685 & src_offset, dst_device_num, src_device_num) bind(c) 686 use, intrinsic :: iso_c_binding, only : c_ptr, c_int, c_size_t 687 integer(c_int) omp_target_memcpy 688 type(c_ptr), value :: dst, src 689 integer(c_size_t), value :: length, dst_offset, src_offset 690 integer(c_int), value :: dst_device_num, src_device_num 691 end function omp_target_memcpy 692 693 function omp_target_memcpy_rect(dst, src, element_size, & 694 & num_dims, volume, dst_offsets, src_offsets, dst_dimensions, & 695 & src_dimensions, dst_device_num, src_device_num) bind(c) 696 use, intrinsic :: iso_c_binding, only : c_ptr, c_int, c_size_t 697 integer(c_int) omp_target_memcpy_rect 698 type(c_ptr), value :: dst, src 699 integer(c_size_t), value :: element_size 700 integer(c_int), value :: num_dims, dst_device_num, & 701 & src_device_num 702 integer(c_size_t), intent(in) :: volume(*), dst_offsets(*), & 703 & src_offsets(*), dst_dimensions(*), src_dimensions(*) 704 end function omp_target_memcpy_rect 705 706 function omp_target_memcpy_async(dst, src, length, dst_offset, & 707 & src_offset, dst_device_num, src_device_num, depobj_count, & 708 & depobj_list) bind(c) 709 use, intrinsic :: iso_c_binding, only : c_ptr, c_int, c_size_t 710 import 711 integer(c_int) omp_target_memcpy_async 712 type(c_ptr), value :: dst, src 713 integer(c_size_t), value :: length, dst_offset, src_offset 714 integer(c_int), value :: dst_device_num, src_device_num, & 715 & depobj_count 716 integer(omp_depend_kind), optional :: depobj_list(*) 717 end function omp_target_memcpy_async 718 719 function omp_target_memcpy_rect_async(dst, src, element_size, & 720 & num_dims, volume, dst_offsets, src_offsets, dst_dimensions, & 721 & src_dimensions, dst_device_num, src_device_num, & 722 & depobj_count, depobj_list) bind(c) 723 use, intrinsic :: iso_c_binding, only : c_ptr, c_int, c_size_t 724 import 725 integer(c_int) omp_target_memcpy_rect_async 726 type(c_ptr), value :: dst, src 727 integer(c_size_t), value :: element_size 728 integer(c_int), value :: num_dims, dst_device_num, & 729 & src_device_num, depobj_count 730 integer(c_size_t), intent(in) :: volume(*), dst_offsets(*), & 731 & src_offsets(*), dst_dimensions(*), src_dimensions(*) 732 integer(omp_depend_kind), optional :: depobj_list(*) 733 end function omp_target_memcpy_rect_async 734 735 function omp_target_associate_ptr(host_ptr, device_ptr, size, & 736 & device_offset, device_num) bind(c) 737 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t, c_int 738 integer(c_int) omp_target_associate_ptr 739 type(c_ptr), value :: host_ptr, device_ptr 740 integer(c_size_t), value :: size, device_offset 741 integer(c_int), value :: device_num 742 end function omp_target_associate_ptr 743 744 function omp_get_mapped_ptr(ptr, device_num) bind(c) 745 use, intrinsic :: iso_c_binding, only : c_ptr, c_int 746 type(c_ptr) omp_get_mapped_ptr 747 type(c_ptr), value :: ptr 748 integer(c_int), value :: device_num 749 end function omp_get_mapped_ptr 750 751 function omp_target_disassociate_ptr(ptr, device_num) bind(c) 752 use, intrinsic :: iso_c_binding, only : c_ptr, c_int 753 integer(c_int) omp_target_disassociate_ptr 754 type(c_ptr), value :: ptr 755 integer(c_int), value :: device_num 756 end function omp_target_disassociate_ptr 757 758 function omp_target_is_accessible(ptr, size, device_num) bind(c) 759 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t, c_int 760 integer(c_int) omp_target_is_accessible 761 type(c_ptr), value :: ptr 762 integer(c_size_t), value :: size 763 integer(c_int), value :: device_num 764 end function omp_target_is_accessible 765 766 function omp_alloc(size, allocator) bind(c) 767 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t 768 import :: omp_allocator_handle_kind 769 type(c_ptr) omp_alloc 770 integer(c_size_t), value :: size 771 integer(omp_allocator_handle_kind), value :: allocator 772 end function omp_alloc 773 774 function omp_aligned_alloc(alignment, size, allocator) bind(c) 775 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t 776 import :: omp_allocator_handle_kind 777 type(c_ptr) omp_aligned_alloc 778 integer(c_size_t), value :: alignment, size 779 integer(omp_allocator_handle_kind), value :: allocator 780 end function omp_aligned_alloc 781 782 function omp_calloc(nmemb, size, allocator) bind(c) 783 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t 784 import :: omp_allocator_handle_kind 785 type(c_ptr) omp_calloc 786 integer(c_size_t), value :: nmemb, size 787 integer(omp_allocator_handle_kind), value :: allocator 788 end function omp_calloc 789 790 function omp_aligned_calloc(alignment, nmemb, size, & 791 & allocator) bind(c) 792 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t 793 import :: omp_allocator_handle_kind 794 type(c_ptr) omp_aligned_calloc 795 integer(c_size_t), value :: alignment, nmemb, size 796 integer(omp_allocator_handle_kind), value :: allocator 797 end function omp_aligned_calloc 798 799 function omp_realloc(ptr, size, allocator, & 800 & free_allocator) bind(c) 801 use, intrinsic :: iso_c_binding, only : c_ptr, c_size_t 802 import :: omp_allocator_handle_kind 803 type(c_ptr) omp_realloc 804 type(c_ptr), value :: ptr 805 integer(c_size_t), value :: size 806 integer(omp_allocator_handle_kind), value :: allocator 807 integer(omp_allocator_handle_kind), value :: free_allocator 808 end function omp_realloc 809 810 subroutine omp_free(ptr, allocator) bind(c) 811 use, intrinsic :: iso_c_binding, only : c_ptr 812 import :: omp_allocator_handle_kind 813 type(c_ptr), value :: ptr 814 integer(omp_allocator_handle_kind), value :: allocator 815 end subroutine omp_free 816 817 function omp_in_explicit_task() bind(c) 818 import 819 logical (kind=omp_logical_kind) omp_in_explicit_task 820 end function omp_in_explicit_task 821 822! *** 823! *** kmp_* entry points 824! *** 825 826 subroutine kmp_set_stacksize(size) bind(c) 827 import 828 integer (kind=omp_integer_kind), value :: size 829 end subroutine kmp_set_stacksize 830 831 subroutine kmp_set_stacksize_s(size) bind(c) 832 import 833 integer (kind=kmp_size_t_kind), value :: size 834 end subroutine kmp_set_stacksize_s 835 836 subroutine kmp_set_blocktime(msec) bind(c) 837 import 838 integer (kind=omp_integer_kind), value :: msec 839 end subroutine kmp_set_blocktime 840 841 subroutine kmp_set_library_serial() bind(c) 842 end subroutine kmp_set_library_serial 843 844 subroutine kmp_set_library_turnaround() bind(c) 845 end subroutine kmp_set_library_turnaround 846 847 subroutine kmp_set_library_throughput() bind(c) 848 end subroutine kmp_set_library_throughput 849 850 subroutine kmp_set_library(libnum) bind(c) 851 import 852 integer (kind=omp_integer_kind), value :: libnum 853 end subroutine kmp_set_library 854 855 subroutine kmp_set_defaults(string) bind(c) 856 character string(*) 857 end subroutine kmp_set_defaults 858 859 function kmp_get_stacksize() bind(c) 860 import 861 integer (kind=omp_integer_kind) kmp_get_stacksize 862 end function kmp_get_stacksize 863 864 function kmp_get_stacksize_s() bind(c) 865 import 866 integer (kind=kmp_size_t_kind) kmp_get_stacksize_s 867 end function kmp_get_stacksize_s 868 869 function kmp_get_blocktime() bind(c) 870 import 871 integer (kind=omp_integer_kind) kmp_get_blocktime 872 end function kmp_get_blocktime 873 874 function kmp_get_library() bind(c) 875 import 876 integer (kind=omp_integer_kind) kmp_get_library 877 end function kmp_get_library 878 879 subroutine kmp_set_disp_num_buffers(num) bind(c) 880 import 881 integer (kind=omp_integer_kind), value :: num 882 end subroutine kmp_set_disp_num_buffers 883 884 function kmp_set_affinity(mask) bind(c) 885 import 886 integer (kind=omp_integer_kind) kmp_set_affinity 887 integer (kind=kmp_affinity_mask_kind) mask 888 end function kmp_set_affinity 889 890 function kmp_get_affinity(mask) bind(c) 891 import 892 integer (kind=omp_integer_kind) kmp_get_affinity 893 integer (kind=kmp_affinity_mask_kind) mask 894 end function kmp_get_affinity 895 896 function kmp_get_affinity_max_proc() bind(c) 897 import 898 integer (kind=omp_integer_kind) kmp_get_affinity_max_proc 899 end function kmp_get_affinity_max_proc 900 901 subroutine kmp_create_affinity_mask(mask) bind(c) 902 import 903 integer (kind=kmp_affinity_mask_kind) mask 904 end subroutine kmp_create_affinity_mask 905 906 subroutine kmp_destroy_affinity_mask(mask) bind(c) 907 import 908 integer (kind=kmp_affinity_mask_kind) mask 909 end subroutine kmp_destroy_affinity_mask 910 911 function kmp_set_affinity_mask_proc(proc, mask) bind(c) 912 import 913 integer (kind=omp_integer_kind) kmp_set_affinity_mask_proc 914 integer (kind=omp_integer_kind), value :: proc 915 integer (kind=kmp_affinity_mask_kind) mask 916 end function kmp_set_affinity_mask_proc 917 918 function kmp_unset_affinity_mask_proc(proc, mask) bind(c) 919 import 920 integer (kind=omp_integer_kind) kmp_unset_affinity_mask_proc 921 integer (kind=omp_integer_kind), value :: proc 922 integer (kind=kmp_affinity_mask_kind) mask 923 end function kmp_unset_affinity_mask_proc 924 925 function kmp_get_affinity_mask_proc(proc, mask) bind(c) 926 import 927 integer (kind=omp_integer_kind) kmp_get_affinity_mask_proc 928 integer (kind=omp_integer_kind), value :: proc 929 integer (kind=kmp_affinity_mask_kind) mask 930 end function kmp_get_affinity_mask_proc 931 932 function kmp_malloc(size) bind(c) 933 import 934 integer (kind=kmp_pointer_kind) kmp_malloc 935 integer (kind=kmp_size_t_kind), value :: size 936 end function kmp_malloc 937 938 function kmp_aligned_malloc(size, alignment) bind(c) 939 import 940 integer (kind=kmp_pointer_kind) kmp_aligned_malloc 941 integer (kind=kmp_size_t_kind), value :: size 942 integer (kind=kmp_size_t_kind), value :: alignment 943 end function kmp_aligned_malloc 944 945 function kmp_calloc(nelem, elsize) bind(c) 946 import 947 integer (kind=kmp_pointer_kind) kmp_calloc 948 integer (kind=kmp_size_t_kind), value :: nelem 949 integer (kind=kmp_size_t_kind), value :: elsize 950 end function kmp_calloc 951 952 function kmp_realloc(ptr, size) bind(c) 953 import 954 integer (kind=kmp_pointer_kind) kmp_realloc 955 integer (kind=kmp_pointer_kind), value :: ptr 956 integer (kind=kmp_size_t_kind), value :: size 957 end function kmp_realloc 958 959 subroutine kmp_free(ptr) bind(c) 960 import 961 integer (kind=kmp_pointer_kind), value :: ptr 962 end subroutine kmp_free 963 964 subroutine kmp_set_warnings_on() bind(c) 965 end subroutine kmp_set_warnings_on 966 967 subroutine kmp_set_warnings_off() bind(c) 968 end subroutine kmp_set_warnings_off 969 end interface 970 971!DIR$ IF DEFINED (__INTEL_OFFLOAD) 972 973!DIR$ IF(__INTEL_COMPILER.LT.1900) 974!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_num_threads 975!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_dynamic 976!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_nested 977!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_num_threads 978!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_max_threads 979!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_thread_num 980!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_num_procs 981!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_in_parallel 982!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_in_final 983!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_dynamic 984!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_nested 985!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_thread_limit 986!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_max_active_levels 987!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_max_active_levels 988!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_level 989!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_active_level 990!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_ancestor_thread_num 991!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_team_size 992!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_schedule 993!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_schedule 994!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_proc_bind 995!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_wtime 996!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_wtick 997!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_default_device 998!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_default_device 999!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_is_initial_device 1000!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_initial_device 1001!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_num_devices 1002!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_device_num 1003!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_pause_resource 1004!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_pause_resource_all 1005!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_supported_active_levels 1006!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_fulfill_event 1007!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_num_teams 1008!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_team_num 1009!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_init_lock 1010!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_destroy_lock 1011!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_lock 1012!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_unset_lock 1013!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_test_lock 1014!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_init_nest_lock 1015!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_destroy_nest_lock 1016!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_nest_lock 1017!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_unset_nest_lock 1018!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_test_nest_lock 1019!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_max_task_priority 1020!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_set_affinity_format 1021!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_get_affinity_format 1022!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_display_affinity 1023!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_capture_affinity 1024!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_stacksize 1025!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_stacksize_s 1026!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_blocktime 1027!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_library_serial 1028!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_library_turnaround 1029!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_library_throughput 1030!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_library 1031!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_defaults 1032!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_stacksize 1033!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_stacksize_s 1034!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_blocktime 1035!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_library 1036!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_disp_num_buffers 1037!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_affinity 1038!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_affinity 1039!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_affinity_max_proc 1040!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_create_affinity_mask 1041!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_destroy_affinity_mask 1042!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_affinity_mask_proc 1043!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_unset_affinity_mask_proc 1044!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_get_affinity_mask_proc 1045!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_malloc 1046!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_aligned_malloc 1047!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_calloc 1048!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_realloc 1049!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_free 1050!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_warnings_on 1051!DIR$ ATTRIBUTES OFFLOAD:MIC :: kmp_set_warnings_off 1052!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_init_lock_with_hint 1053!DIR$ ATTRIBUTES OFFLOAD:MIC :: omp_init_nest_lock_with_hint 1054!DIR$ ENDIF 1055 1056!DIR$ IF(__INTEL_COMPILER.GE.1400) 1057!$omp declare target(omp_set_num_threads ) 1058!$omp declare target(omp_set_dynamic ) 1059!$omp declare target(omp_set_nested ) 1060!$omp declare target(omp_get_num_threads ) 1061!$omp declare target(omp_get_max_threads ) 1062!$omp declare target(omp_get_thread_num ) 1063!$omp declare target(omp_get_num_procs ) 1064!$omp declare target(omp_in_parallel ) 1065!$omp declare target(omp_in_final ) 1066!$omp declare target(omp_get_dynamic ) 1067!$omp declare target(omp_get_nested ) 1068!$omp declare target(omp_get_thread_limit ) 1069!$omp declare target(omp_set_max_active_levels ) 1070!$omp declare target(omp_get_max_active_levels ) 1071!$omp declare target(omp_get_level ) 1072!$omp declare target(omp_get_active_level ) 1073!$omp declare target(omp_get_ancestor_thread_num ) 1074!$omp declare target(omp_get_team_size ) 1075!$omp declare target(omp_set_schedule ) 1076!$omp declare target(omp_get_schedule ) 1077!$omp declare target(omp_get_proc_bind ) 1078!$omp declare target(omp_get_wtime ) 1079!$omp declare target(omp_get_wtick ) 1080!$omp declare target(omp_get_default_device ) 1081!$omp declare target(omp_set_default_device ) 1082!$omp declare target(omp_is_initial_device ) 1083!$omp declare target(omp_get_initial_device ) 1084!$omp declare target(omp_get_num_devices ) 1085!$omp declare target(omp_get_device_num ) 1086!$omp declare target(omp_pause_resource ) 1087!$omp declare target(omp_pause_resource_all ) 1088!$omp declare target(omp_get_supported_active_levels ) 1089!$omp declare target(omp_fulfill_event) 1090!$omp declare target(omp_get_num_teams ) 1091!$omp declare target(omp_get_team_num ) 1092!$omp declare target(omp_init_lock ) 1093!$omp declare target(omp_destroy_lock ) 1094!$omp declare target(omp_set_lock ) 1095!$omp declare target(omp_unset_lock ) 1096!$omp declare target(omp_test_lock ) 1097!$omp declare target(omp_init_nest_lock ) 1098!$omp declare target(omp_destroy_nest_lock ) 1099!$omp declare target(omp_set_nest_lock ) 1100!$omp declare target(omp_unset_nest_lock ) 1101!$omp declare target(omp_test_nest_lock ) 1102!$omp declare target(omp_get_max_task_priority ) 1103!$omp declare target(omp_set_affinity_format ) 1104!$omp declare target(omp_get_affinity_format ) 1105!$omp declare target(omp_display_affinity ) 1106!$omp declare target(omp_capture_affinity ) 1107!$omp declare target(kmp_set_stacksize ) 1108!$omp declare target(kmp_set_stacksize_s ) 1109!$omp declare target(kmp_set_blocktime ) 1110!$omp declare target(kmp_set_library_serial ) 1111!$omp declare target(kmp_set_library_turnaround ) 1112!$omp declare target(kmp_set_library_throughput ) 1113!$omp declare target(kmp_set_library ) 1114!$omp declare target(kmp_set_defaults ) 1115!$omp declare target(kmp_get_stacksize ) 1116!$omp declare target(kmp_get_stacksize_s ) 1117!$omp declare target(kmp_get_blocktime ) 1118!$omp declare target(kmp_get_library ) 1119!$omp declare target(kmp_set_disp_num_buffers ) 1120!$omp declare target(kmp_set_affinity ) 1121!$omp declare target(kmp_get_affinity ) 1122!$omp declare target(kmp_get_affinity_max_proc ) 1123!$omp declare target(kmp_create_affinity_mask ) 1124!$omp declare target(kmp_destroy_affinity_mask ) 1125!$omp declare target(kmp_set_affinity_mask_proc ) 1126!$omp declare target(kmp_unset_affinity_mask_proc ) 1127!$omp declare target(kmp_get_affinity_mask_proc ) 1128!$omp declare target(kmp_malloc ) 1129!$omp declare target(kmp_aligned_malloc ) 1130!$omp declare target(kmp_calloc ) 1131!$omp declare target(kmp_realloc ) 1132!$omp declare target(kmp_free ) 1133!$omp declare target(kmp_set_warnings_on ) 1134!$omp declare target(kmp_set_warnings_off ) 1135!$omp declare target(omp_init_lock_with_hint ) 1136!$omp declare target(omp_init_nest_lock_with_hint ) 1137!DIR$ ENDIF 1138!DIR$ ENDIF 1139