From 3972573ffffe96842d591d3f2a8e586ff0777317 Mon Sep 17 00:00:00 2001 From: Salvatore Filippone Date: Fri, 23 Nov 2018 17:36:02 +0000 Subject: [PATCH] New source code for cbind constants. --- base/modules/psb_cbind_const_mod.F90 | 52 ++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 base/modules/psb_cbind_const_mod.F90 diff --git a/base/modules/psb_cbind_const_mod.F90 b/base/modules/psb_cbind_const_mod.F90 new file mode 100644 index 00000000..0f144352 --- /dev/null +++ b/base/modules/psb_cbind_const_mod.F90 @@ -0,0 +1,52 @@ +! +! Parallel Sparse BLAS version 3.5 +! (C) Copyright 2006-2018 +! Salvatore Filippone +! Alfredo Buttari +! +! Redistribution and use in source and binary forms, with or without +! modification, are permitted provided that the following conditions +! are met: +! 1. Redistributions of source code must retain the above copyright +! notice, this list of conditions and the following disclaimer. +! 2. Redistributions in binary form must reproduce the above copyright +! notice, this list of conditions, and the following disclaimer in the +! documentation and/or other materials provided with the distribution. +! 3. The name of the PSBLAS group or the names of its contributors may +! not be used to endorse or promote products derived from this +! software without specific written permission. +! +! THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +! ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +! TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +! PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE PSBLAS GROUP OR ITS CONTRIBUTORS +! BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +! CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +! SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +! INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +! CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +! ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +! POSSIBILITY OF SUCH DAMAGE. +! +! + +module psb_cbind_const_mod + use iso_c_binding + + integer, parameter :: psb_c_mpk = c_int32_t +#if defined(IPK4) && defined(LPK4) + integer, parameter :: psb_c_ipk = c_int32_t + integer, parameter :: psb_c_lpk = c_int32_t +#elif defined(IPK4) && defined(LPK8) + integer, parameter :: psb_c_ipk = c_int32_t + integer, parameter :: psb_c_lpk = c_int64_t +#elif defined(IPK8) && defined(LPK8) + integer, parameter :: psb_c_ipk = c_int64_t + integer, parameter :: psb_c_lpk = c_int64_t +#else + integer, parameter :: psb_c_ipk = -1 + integer, parameter :: psb_c_lpk = -1 +#endif + integer, parameter :: psb_c_epk = c_int64_t + +end module psb_cbind_const_mod