| ! include/omp_lib_impl.f90.var |
| ! |
| !//===----------------------------------------------------------------------===// |
| !// |
| !// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
| !// See https://llvm.org/LICENSE.txt for license information. |
| !// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
| !// |
| !//===----------------------------------------------------------------------===// |
| ! |
| ! Integer-kind wrapper procedures for omp_lib |
| |
| submodule (omp_lib) omp_lib_impl |
| use omp_lib_kinds |
| contains |
| |
| module procedure omp_set_num_threads_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_num_threads_c(int(num_threads, kind=c_int)) |
| end procedure omp_set_num_threads_i1 |
| |
| module procedure omp_set_num_threads_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_num_threads_c(int(num_threads, kind=c_int)) |
| end procedure omp_set_num_threads_i2 |
| |
| module procedure omp_set_num_threads_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_num_threads_c(int(num_threads, kind=c_int)) |
| end procedure omp_set_num_threads_i4 |
| |
| module procedure omp_set_num_threads_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_num_threads_c(int(num_threads, kind=c_int)) |
| end procedure omp_set_num_threads_i8 |
| |
| module procedure omp_set_max_active_levels_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_max_active_levels_c(int(max_levels, kind=c_int)) |
| end procedure omp_set_max_active_levels_i1 |
| |
| module procedure omp_set_max_active_levels_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_max_active_levels_c(int(max_levels, kind=c_int)) |
| end procedure omp_set_max_active_levels_i2 |
| |
| module procedure omp_set_max_active_levels_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_max_active_levels_c(int(max_levels, kind=c_int)) |
| end procedure omp_set_max_active_levels_i4 |
| |
| module procedure omp_set_max_active_levels_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_max_active_levels_c(int(max_levels, kind=c_int)) |
| end procedure omp_set_max_active_levels_i8 |
| |
| module procedure omp_set_default_device_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_default_device_c(int(device_num, kind=c_int)) |
| end procedure omp_set_default_device_i1 |
| |
| module procedure omp_set_default_device_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_default_device_c(int(device_num, kind=c_int)) |
| end procedure omp_set_default_device_i2 |
| |
| module procedure omp_set_default_device_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_default_device_c(int(device_num, kind=c_int)) |
| end procedure omp_set_default_device_i4 |
| |
| module procedure omp_set_default_device_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_default_device_c(int(device_num, kind=c_int)) |
| end procedure omp_set_default_device_i8 |
| |
| module procedure omp_set_num_teams_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_num_teams_c(int(num_teams, kind=c_int)) |
| end procedure omp_set_num_teams_i1 |
| |
| module procedure omp_set_num_teams_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_num_teams_c(int(num_teams, kind=c_int)) |
| end procedure omp_set_num_teams_i2 |
| |
| module procedure omp_set_num_teams_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_num_teams_c(int(num_teams, kind=c_int)) |
| end procedure omp_set_num_teams_i4 |
| |
| module procedure omp_set_num_teams_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_num_teams_c(int(num_teams, kind=c_int)) |
| end procedure omp_set_num_teams_i8 |
| |
| module procedure omp_set_teams_thread_limit_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_teams_thread_limit_c(int(thread_limit, kind=c_int)) |
| end procedure omp_set_teams_thread_limit_i1 |
| |
| module procedure omp_set_teams_thread_limit_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_teams_thread_limit_c(int(thread_limit, kind=c_int)) |
| end procedure omp_set_teams_thread_limit_i2 |
| |
| module procedure omp_set_teams_thread_limit_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_teams_thread_limit_c(int(thread_limit, kind=c_int)) |
| end procedure omp_set_teams_thread_limit_i4 |
| |
| module procedure omp_set_teams_thread_limit_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_teams_thread_limit_c(int(thread_limit, kind=c_int)) |
| end procedure omp_set_teams_thread_limit_i8 |
| |
| module procedure kmp_set_stacksize_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_stacksize_c(int(size, kind=c_int)) |
| end procedure kmp_set_stacksize_i1 |
| |
| module procedure kmp_set_stacksize_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_stacksize_c(int(size, kind=c_int)) |
| end procedure kmp_set_stacksize_i2 |
| |
| module procedure kmp_set_stacksize_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_stacksize_c(int(size, kind=c_int)) |
| end procedure kmp_set_stacksize_i4 |
| |
| module procedure kmp_set_stacksize_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_stacksize_c(int(size, kind=c_int)) |
| end procedure kmp_set_stacksize_i8 |
| |
| module procedure kmp_set_blocktime_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_blocktime_c(int(msec, kind=c_int)) |
| end procedure kmp_set_blocktime_i1 |
| |
| module procedure kmp_set_blocktime_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_blocktime_c(int(msec, kind=c_int)) |
| end procedure kmp_set_blocktime_i2 |
| |
| module procedure kmp_set_blocktime_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_blocktime_c(int(msec, kind=c_int)) |
| end procedure kmp_set_blocktime_i4 |
| |
| module procedure kmp_set_blocktime_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_blocktime_c(int(msec, kind=c_int)) |
| end procedure kmp_set_blocktime_i8 |
| |
| module procedure kmp_set_library_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_library_c(int(libnum, kind=c_int)) |
| end procedure kmp_set_library_i1 |
| |
| module procedure kmp_set_library_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_library_c(int(libnum, kind=c_int)) |
| end procedure kmp_set_library_i2 |
| |
| module procedure kmp_set_library_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_library_c(int(libnum, kind=c_int)) |
| end procedure kmp_set_library_i4 |
| |
| module procedure kmp_set_library_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_library_c(int(libnum, kind=c_int)) |
| end procedure kmp_set_library_i8 |
| |
| module procedure kmp_set_disp_num_buffers_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_disp_num_buffers_c(int(num, kind=c_int)) |
| end procedure kmp_set_disp_num_buffers_i1 |
| |
| module procedure kmp_set_disp_num_buffers_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_disp_num_buffers_c(int(num, kind=c_int)) |
| end procedure kmp_set_disp_num_buffers_i2 |
| |
| module procedure kmp_set_disp_num_buffers_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_disp_num_buffers_c(int(num, kind=c_int)) |
| end procedure kmp_set_disp_num_buffers_i4 |
| |
| module procedure kmp_set_disp_num_buffers_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call kmp_set_disp_num_buffers_c(int(num, kind=c_int)) |
| end procedure kmp_set_disp_num_buffers_i8 |
| |
| module procedure omp_get_ancestor_thread_num_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_get_ancestor_thread_num_i1 = & |
| omp_get_ancestor_thread_num_c(int(level, kind=c_int)) |
| end procedure omp_get_ancestor_thread_num_i1 |
| |
| module procedure omp_get_ancestor_thread_num_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_get_ancestor_thread_num_i2 = & |
| omp_get_ancestor_thread_num_c(int(level, kind=c_int)) |
| end procedure omp_get_ancestor_thread_num_i2 |
| |
| module procedure omp_get_ancestor_thread_num_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_get_ancestor_thread_num_i4 = & |
| omp_get_ancestor_thread_num_c(int(level, kind=c_int)) |
| end procedure omp_get_ancestor_thread_num_i4 |
| |
| module procedure omp_get_ancestor_thread_num_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_get_ancestor_thread_num_i8 = & |
| omp_get_ancestor_thread_num_c(int(level, kind=c_int)) |
| end procedure omp_get_ancestor_thread_num_i8 |
| |
| module procedure omp_get_team_size_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_get_team_size_i1 = omp_get_team_size_c(int(level, kind=c_int)) |
| end procedure omp_get_team_size_i1 |
| |
| module procedure omp_get_team_size_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_get_team_size_i2 = omp_get_team_size_c(int(level, kind=c_int)) |
| end procedure omp_get_team_size_i2 |
| |
| module procedure omp_get_team_size_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_get_team_size_i4 = omp_get_team_size_c(int(level, kind=c_int)) |
| end procedure omp_get_team_size_i4 |
| |
| module procedure omp_get_team_size_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_get_team_size_i8 = omp_get_team_size_c(int(level, kind=c_int)) |
| end procedure omp_get_team_size_i8 |
| |
| module procedure omp_get_place_num_procs_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_get_place_num_procs_i1 = & |
| omp_get_place_num_procs_c(int(place_num, kind=c_int)) |
| end procedure omp_get_place_num_procs_i1 |
| |
| module procedure omp_get_place_num_procs_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_get_place_num_procs_i2 = & |
| omp_get_place_num_procs_c(int(place_num, kind=c_int)) |
| end procedure omp_get_place_num_procs_i2 |
| |
| module procedure omp_get_place_num_procs_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_get_place_num_procs_i4 = & |
| omp_get_place_num_procs_c(int(place_num, kind=c_int)) |
| end procedure omp_get_place_num_procs_i4 |
| |
| module procedure omp_get_place_num_procs_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_get_place_num_procs_i8 = & |
| omp_get_place_num_procs_c(int(place_num, kind=c_int)) |
| end procedure omp_get_place_num_procs_i8 |
| |
| module procedure omp_set_schedule_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_schedule_c(kind, int(chunk_size, kind=c_int)) |
| end procedure omp_set_schedule_i1 |
| |
| module procedure omp_set_schedule_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_schedule_c(kind, int(chunk_size, kind=c_int)) |
| end procedure omp_set_schedule_i2 |
| |
| module procedure omp_set_schedule_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_schedule_c(kind, int(chunk_size, kind=c_int)) |
| end procedure omp_set_schedule_i4 |
| |
| module procedure omp_set_schedule_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| call omp_set_schedule_c(kind, int(chunk_size, kind=c_int)) |
| end procedure omp_set_schedule_i8 |
| |
| module procedure omp_get_schedule_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| integer(c_int) :: kind_c, chunk_c |
| call omp_get_schedule_c(kind_c, chunk_c) |
| kind = kind_c |
| chunk_size = chunk_c |
| end procedure omp_get_schedule_i1 |
| |
| module procedure omp_get_schedule_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| integer(c_int) :: kind_c, chunk_c |
| call omp_get_schedule_c(kind_c, chunk_c) |
| kind = kind_c |
| chunk_size = chunk_c |
| end procedure omp_get_schedule_i2 |
| |
| module procedure omp_get_schedule_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| integer(c_int) :: kind_c, chunk_c |
| call omp_get_schedule_c(kind_c, chunk_c) |
| kind = kind_c |
| chunk_size = chunk_c |
| end procedure omp_get_schedule_i4 |
| |
| module procedure omp_get_schedule_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| integer(c_int) :: kind_c, chunk_c |
| call omp_get_schedule_c(kind_c, chunk_c) |
| kind = kind_c |
| chunk_size = chunk_c |
| end procedure omp_get_schedule_i8 |
| |
| module procedure omp_pause_resource_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_pause_resource_i1 = & |
| omp_pause_resource_c(kind, int(device_num, kind=c_int)) |
| end procedure omp_pause_resource_i1 |
| |
| module procedure omp_pause_resource_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_pause_resource_i2 = & |
| omp_pause_resource_c(kind, int(device_num, kind=c_int)) |
| end procedure omp_pause_resource_i2 |
| |
| module procedure omp_pause_resource_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_pause_resource_i4 = & |
| omp_pause_resource_c(kind, int(device_num, kind=c_int)) |
| end procedure omp_pause_resource_i4 |
| |
| module procedure omp_pause_resource_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| omp_pause_resource_i8 = & |
| omp_pause_resource_c(kind, int(device_num, kind=c_int)) |
| end procedure omp_pause_resource_i8 |
| |
| module procedure kmp_set_affinity_mask_proc_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| kmp_set_affinity_mask_proc_i1 = & |
| kmp_set_affinity_mask_proc_c(int(proc, kind=c_int), mask) |
| end procedure kmp_set_affinity_mask_proc_i1 |
| |
| module procedure kmp_set_affinity_mask_proc_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| kmp_set_affinity_mask_proc_i2 = & |
| kmp_set_affinity_mask_proc_c(int(proc, kind=c_int), mask) |
| end procedure kmp_set_affinity_mask_proc_i2 |
| |
| module procedure kmp_set_affinity_mask_proc_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| kmp_set_affinity_mask_proc_i4 = & |
| kmp_set_affinity_mask_proc_c(int(proc, kind=c_int), mask) |
| end procedure kmp_set_affinity_mask_proc_i4 |
| |
| module procedure kmp_set_affinity_mask_proc_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| kmp_set_affinity_mask_proc_i8 = & |
| kmp_set_affinity_mask_proc_c(int(proc, kind=c_int), mask) |
| end procedure kmp_set_affinity_mask_proc_i8 |
| |
| module procedure kmp_unset_affinity_mask_proc_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| kmp_unset_affinity_mask_proc_i1 = & |
| kmp_unset_affinity_mask_proc_c(int(proc, kind=c_int), mask) |
| end procedure kmp_unset_affinity_mask_proc_i1 |
| |
| module procedure kmp_unset_affinity_mask_proc_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| kmp_unset_affinity_mask_proc_i2 = & |
| kmp_unset_affinity_mask_proc_c(int(proc, kind=c_int), mask) |
| end procedure kmp_unset_affinity_mask_proc_i2 |
| |
| module procedure kmp_unset_affinity_mask_proc_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| kmp_unset_affinity_mask_proc_i4 = & |
| kmp_unset_affinity_mask_proc_c(int(proc, kind=c_int), mask) |
| end procedure kmp_unset_affinity_mask_proc_i4 |
| |
| module procedure kmp_unset_affinity_mask_proc_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| kmp_unset_affinity_mask_proc_i8 = & |
| kmp_unset_affinity_mask_proc_c(int(proc, kind=c_int), mask) |
| end procedure kmp_unset_affinity_mask_proc_i8 |
| |
| module procedure kmp_get_affinity_mask_proc_i1 |
| use, intrinsic :: iso_c_binding, only: c_int |
| kmp_get_affinity_mask_proc_i1 = & |
| kmp_get_affinity_mask_proc_c(int(proc, kind=c_int), mask) |
| end procedure kmp_get_affinity_mask_proc_i1 |
| |
| module procedure kmp_get_affinity_mask_proc_i2 |
| use, intrinsic :: iso_c_binding, only: c_int |
| kmp_get_affinity_mask_proc_i2 = & |
| kmp_get_affinity_mask_proc_c(int(proc, kind=c_int), mask) |
| end procedure kmp_get_affinity_mask_proc_i2 |
| |
| module procedure kmp_get_affinity_mask_proc_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| kmp_get_affinity_mask_proc_i4 = & |
| kmp_get_affinity_mask_proc_c(int(proc, kind=c_int), mask) |
| end procedure kmp_get_affinity_mask_proc_i4 |
| |
| module procedure kmp_get_affinity_mask_proc_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| kmp_get_affinity_mask_proc_i8 = & |
| kmp_get_affinity_mask_proc_c(int(proc, kind=c_int), mask) |
| end procedure kmp_get_affinity_mask_proc_i8 |
| |
| module procedure omp_get_place_proc_ids_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| integer(c_int) :: n, i |
| integer(c_int), allocatable :: ids_c(:) |
| n = omp_get_place_num_procs_c(int(place_num, kind=c_int)) |
| allocate(ids_c(n)) |
| call omp_get_place_proc_ids_c(int(place_num, kind=c_int), ids_c) |
| do i = 1, n |
| ids(i) = ids_c(i) |
| end do |
| deallocate(ids_c) |
| end procedure omp_get_place_proc_ids_i4 |
| |
| module procedure omp_get_place_proc_ids_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| integer(c_int) :: n, i |
| integer(c_int), allocatable :: ids_c(:) |
| n = omp_get_place_num_procs_c(int(place_num, kind=c_int)) |
| allocate(ids_c(n)) |
| call omp_get_place_proc_ids_c(int(place_num, kind=c_int), ids_c) |
| do i = 1, n |
| ids(i) = ids_c(i) |
| end do |
| deallocate(ids_c) |
| end procedure omp_get_place_proc_ids_i8 |
| |
| module procedure omp_get_partition_place_nums_i4 |
| use, intrinsic :: iso_c_binding, only: c_int |
| integer(c_int) :: n, i |
| integer(c_int), allocatable :: place_nums_c(:) |
| n = omp_get_partition_num_places() |
| allocate(place_nums_c(n)) |
| call omp_get_partition_place_nums_c(place_nums_c) |
| do i = 1, n |
| place_nums(i) = place_nums_c(i) |
| end do |
| deallocate(place_nums_c) |
| end procedure omp_get_partition_place_nums_i4 |
| |
| module procedure omp_get_partition_place_nums_i8 |
| use, intrinsic :: iso_c_binding, only: c_int |
| integer(c_int) :: n, i |
| integer(c_int), allocatable :: place_nums_c(:) |
| n = omp_get_partition_num_places() |
| allocate(place_nums_c(n)) |
| call omp_get_partition_place_nums_c(place_nums_c) |
| do i = 1, n |
| place_nums(i) = place_nums_c(i) |
| end do |
| deallocate(place_nums_c) |
| end procedure omp_get_partition_place_nums_i8 |
| |
| end submodule omp_lib_impl |