Fixed compilation for cdall & friends.

ILmat
Salvatore Filippone 8 years ago
parent 6cd4948ac9
commit d8eff28219

@ -282,7 +282,6 @@ module psb_desc_mod
module procedure psb_cdfree
end interface psb_free
private :: nullify_desc, cd_get_fmt,&
& cd_l2gs1, cd_l2gs2, cd_l2gv1, cd_l2gv2, cd_g2ls1,&
& cd_g2ls2, cd_g2lv1, cd_g2lv2, cd_g2ls1_ins,&
@ -334,11 +333,13 @@ contains
val = cd_large_threshold
end function psb_cd_get_large_threshold
logical function psb_cd_choose_large_state(ictxt,m)
function psb_cd_choose_large_state(ictxt,m) result(val)
use psb_penv_mod
implicit none
integer(psb_ipk_), intent(in) :: ictxt,m
integer(psb_ipk_), intent(in) :: ictxt
integer(psb_lpk_), intent(in) :: m
logical :: val
!locals
integer(psb_ipk_) :: np,me
@ -348,8 +349,7 @@ contains
! it makes no sense to use them if you don't have at least
! 3 processes, no matter what the size of the process.
!
psb_cd_choose_large_state = &
& (m > psb_cd_get_large_threshold()) .and. &
val = (m > psb_cd_get_large_threshold()) .and. &
& (np > 2)
end function psb_cd_choose_large_state

@ -93,16 +93,18 @@ module psb_cd_tools_mod
interface psb_cdins
subroutine psb_cdinsrc(nz,ia,ja,desc_a,info,ila,jla)
import :: psb_ipk_, psb_desc_type
import :: psb_ipk_, psb_lpk_, psb_desc_type
type(psb_desc_type), intent(inout) :: desc_a
integer(psb_ipk_), intent(in) :: nz,ia(:),ja(:)
integer(psb_ipk_), intent(in) :: nz
integer(psb_lpk_), intent(in) :: ia(:),ja(:)
integer(psb_ipk_), intent(out) :: info
integer(psb_ipk_), optional, intent(out) :: ila(:), jla(:)
end subroutine psb_cdinsrc
subroutine psb_cdinsc(nz,ja,desc,info,jla,mask,lidx)
import :: psb_ipk_, psb_desc_type
import :: psb_ipk_, psb_lpk_, psb_desc_type
type(psb_desc_type), intent(inout) :: desc
integer(psb_ipk_), intent(in) :: nz,ja(:)
integer(psb_ipk_), intent(in) :: nz
integer(psb_lpk_), intent(in) :: ja(:)
integer(psb_ipk_), intent(out) :: info
integer(psb_ipk_), optional, intent(out) :: jla(:)
logical, optional, target, intent(in) :: mask(:)
@ -112,10 +114,10 @@ module psb_cd_tools_mod
interface psb_cdbldext
Subroutine psb_cd_lstext(desc_a,in_list,desc_ov,info, mask,extype)
import :: psb_ipk_, psb_desc_type
import :: psb_ipk_, psb_lpk_, psb_desc_type
Implicit None
Type(psb_desc_type), Intent(inout), target :: desc_a
integer(psb_ipk_), intent(in) :: in_list(:)
integer(psb_lpk_), intent(in) :: in_list(:)
Type(psb_desc_type), Intent(out) :: desc_ov
integer(psb_ipk_), intent(out) :: info
logical, intent(in), optional, target :: mask(:)

@ -61,10 +61,11 @@ subroutine psb_cd_inloc(v, ictxt, desc, info, globalcheck,idx)
& loc_col,nprocs,k,glx,nlu,&
& flag_, err_act, novrl, norphan,&
& npr_ov, itmpov, i_pnt
integer(psb_lpk) :: m, n, nrt
integer(psb_lpk_) :: m, n, nrt
integer(psb_ipk_) :: int_err(5),exch(3)
integer(psb_ipk_), allocatable :: temp_ovrlap(:), tmpgidx(:,:), vl(:),&
& nov(:), ov_idx(:,:), ix(:)
integer(psb_ipk_), allocatable :: temp_ovrlap(:), tmpgidx(:,:), &
& nov(:), ov_idx(:,:)
integer(psb_lpk_), allocatable :: vl(:), ix(:)
integer(psb_ipk_) :: debug_level, debug_unit
integer(psb_mpk_) :: iictxt
logical :: check_, islarge
@ -84,15 +85,11 @@ subroutine psb_cd_inloc(v, ictxt, desc, info, globalcheck,idx)
iictxt = ictxt
loc_row = size(v)
if (.false.) then
m = loc_row
call psb_sum(ictxt,m)
else
m = maxval(v)
nrt = loc_row
call psb_sum(ictxt,nrt)
call psb_max(ictxt,m)
end if
m = maxval(v)
nrt = loc_row
call psb_sum(ictxt,nrt)
call psb_max(ictxt,m)
if (present(globalcheck)) then
check_ = globalcheck
else

@ -38,7 +38,7 @@ Subroutine psb_cd_lstext(desc_a,in_list,desc_ov,info, mask,extype)
! .. Array Arguments ..
Type(psb_desc_type), Intent(inout), target :: desc_a
integer(psb_ipk_), intent(in) :: in_list(:)
integer(psb_lpk_), intent(in) :: in_list(:)
Type(psb_desc_type), Intent(out) :: desc_ov
integer(psb_ipk_), intent(out) :: info
logical, intent(in), optional, target :: mask(:)

@ -57,9 +57,10 @@ subroutine psb_cdalv(v, ictxt, desc, info, flag)
type(psb_desc_type), intent(out) :: desc
!locals
integer(psb_ipk_) :: counter,i,j,np,me,loc_row,err,&
& loc_col,nprocs,m,n,itmpov, k,glx,&
integer(psb_ipk_) :: counter,j,np,me,loc_row,err,&
& loc_col,nprocs,itmpov, k,glx,&
& l_ov_ix,l_ov_el,idx, flag_, err_act
integer(psb_lpk_) :: m,n,i
integer(psb_ipk_) :: int_err(5),exch(3)
integer(psb_ipk_), allocatable :: temp_ovrlap(:)
integer(psb_ipk_) :: debug_level, debug_unit

@ -52,7 +52,8 @@ subroutine psb_cdinsrc(nz,ia,ja,desc_a,info,ila,jla)
!....PARAMETERS...
Type(psb_desc_type), intent(inout) :: desc_a
integer(psb_ipk_), intent(in) :: nz,ia(:),ja(:)
integer(psb_ipk_), intent(in) :: nz
integer(psb_lpk_), intent(in) :: ia(:),ja(:)
integer(psb_ipk_), intent(out) :: info
integer(psb_ipk_), optional, intent(out) :: ila(:), jla(:)
!LOCALS.....
@ -133,8 +134,7 @@ subroutine psb_cdinsrc(nz,ia,ja,desc_a,info,ila,jla)
end if
call desc_a%indxmap%g2l(ia(1:nz),ila_(1:nz),info,owned=.true.)
if (info == psb_success_) then
jla_(1:nz) = ja(1:nz)
call desc_a%indxmap%g2lip_ins(jla_(1:nz),info,mask=(ila_(1:nz)>0))
call desc_a%indxmap%g2l_ins(ja(1:nz),jla_(1:nz),info,mask=(ila_(1:nz)>0))
end if
deallocate(ila_,jla_,stat=info)
end if
@ -170,7 +170,8 @@ subroutine psb_cdinsc(nz,ja,desc,info,jla,mask,lidx)
!....PARAMETERS...
Type(psb_desc_type), intent(inout) :: desc
integer(psb_ipk_), intent(in) :: nz,ja(:)
integer(psb_ipk_), intent(in) :: nz
integer(psb_lpk_), intent(in) :: ja(:)
integer(psb_ipk_), intent(out) :: info
integer(psb_ipk_), optional, intent(out) :: jla(:)
logical, optional, target, intent(in) :: mask(:)

@ -129,7 +129,7 @@ contains
integer(psb_ipk_) :: ip, nerv, nesd, totxch,idxr,idxs
integer(psb_ipk_) :: ictxt, me, np, data_, info, verb_
integer(psb_ipk_), allocatable :: gidx(:)
integer(psb_lpk_), allocatable :: gidx(:)
class(psb_i_base_vect_type), pointer :: vpnt
ictxt = desc_p%get_ctxt()

@ -107,12 +107,14 @@ subroutine psb_cdrep(m, ictxt, desc, info)
use psb_repl_map_mod
implicit None
!....Parameters...
integer(psb_ipk_), intent(in) :: m,ictxt
integer(psb_lpk_), intent(in) :: m
integer(psb_ipk_), intent(in) :: ictxt
integer(psb_ipk_), intent(out) :: info
Type(psb_desc_type), intent(out) :: desc
!locals
integer(psb_ipk_) :: i,np,me,err,n,err_act
integer(psb_ipk_) :: i,np,me,err,err_act
integer(psb_lpk_) :: n
integer(psb_ipk_) :: int_err(5),exch(2), thalo(1), tovr(1), text(1)
integer(psb_ipk_) :: debug_level, debug_unit
integer(psb_mpk_) :: iictxt

Loading…
Cancel
Save