mirror of
https://github.com/sfilippone/psblas3.git
synced 2026-10-18 20:02:27 +00:00
psblas3:
psb_c_vect_mod.F90 psb_c_vect_mod.f90 psb_d_vect_mod.F90 psb_d_vect_mod.f90 psb_gen_block_map_mod.f90 psb_hash_map_mod.f90 psb_indx_map_mod.f90 psb_list_map_mod.f90 psb_repl_map_mod.f90 psb_s_vect_mod.F90 psb_s_vect_mod.f90 psb_z_vect_mod.F90 psb_z_vect_mod.f90 Changes to L2G/G2L with explicit IP generics, to account for strict rules in the standard. Caught by XLF. First step in changing vect_mod to account for %mold methods.
This commit is contained in:
@@ -144,7 +144,7 @@ contains
|
||||
end if
|
||||
|
||||
idxv(1) = idx
|
||||
call idxmap%l2g(idxv,info,owned=owned)
|
||||
call idxmap%l2gip(idxv,info,owned=owned)
|
||||
idx = idxv(1)
|
||||
|
||||
end subroutine block_l2gs1
|
||||
@@ -159,7 +159,7 @@ contains
|
||||
logical, intent(in), optional :: owned
|
||||
|
||||
idxout = idxin
|
||||
call idxmap%l2g(idxout,info,mask,owned)
|
||||
call idxmap%l2gip(idxout,info,mask,owned)
|
||||
|
||||
end subroutine block_l2gs2
|
||||
|
||||
@@ -234,7 +234,7 @@ contains
|
||||
is = size(idxin)
|
||||
im = min(is,size(idxout))
|
||||
idxout(1:im) = idxin(1:im)
|
||||
call idxmap%l2g(idxout(1:im),info,mask,owned)
|
||||
call idxmap%l2gip(idxout(1:im),info,mask,owned)
|
||||
if (is > im) then
|
||||
info = -3
|
||||
end if
|
||||
@@ -257,7 +257,7 @@ contains
|
||||
end if
|
||||
|
||||
idxv(1) = idx
|
||||
call idxmap%g2l(idxv,info,owned=owned)
|
||||
call idxmap%g2lip(idxv,info,owned=owned)
|
||||
idx = idxv(1)
|
||||
|
||||
end subroutine block_g2ls1
|
||||
@@ -272,7 +272,7 @@ contains
|
||||
logical, intent(in), optional :: owned
|
||||
|
||||
idxout = idxin
|
||||
call idxmap%g2l(idxout,info,mask,owned)
|
||||
call idxmap%g2lip(idxout,info,mask,owned)
|
||||
|
||||
end subroutine block_g2ls2
|
||||
|
||||
@@ -399,7 +399,7 @@ contains
|
||||
is = size(idxin)
|
||||
im = min(is,size(idxout))
|
||||
idxout(1:im) = idxin(1:im)
|
||||
call idxmap%g2l(idxout(1:im),info,mask,owned)
|
||||
call idxmap%g2lip(idxout(1:im),info,mask,owned)
|
||||
if (is > im) info = -3
|
||||
|
||||
end subroutine block_g2lv2
|
||||
@@ -425,9 +425,9 @@ contains
|
||||
idxv(1) = idx
|
||||
if (present(lidx)) then
|
||||
lidxv(1) = lidx
|
||||
call idxmap%g2l_ins(idxv,info,lidx=lidxv)
|
||||
call idxmap%g2lip_ins(idxv,info,lidx=lidxv)
|
||||
else
|
||||
call idxmap%g2l_ins(idxv,info)
|
||||
call idxmap%g2lip_ins(idxv,info)
|
||||
end if
|
||||
idx = idxv(1)
|
||||
|
||||
@@ -443,7 +443,7 @@ contains
|
||||
integer, intent(in), optional :: lidx
|
||||
|
||||
idxout = idxin
|
||||
call idxmap%g2l_ins(idxout,info,mask=mask,lidx=lidx)
|
||||
call idxmap%g2lip_ins(idxout,info,mask=mask,lidx=lidx)
|
||||
|
||||
end subroutine block_g2ls2_ins
|
||||
|
||||
@@ -659,7 +659,7 @@ contains
|
||||
is = size(idxin)
|
||||
im = min(is,size(idxout))
|
||||
idxout(1:im) = idxin(1:im)
|
||||
call idxmap%g2l_ins(idxout(1:im),info,mask=mask,lidx=lidx)
|
||||
call idxmap%g2lip_ins(idxout(1:im),info,mask=mask,lidx=lidx)
|
||||
if (is > im) then
|
||||
!!$ write(0,*) 'g2lv2_ins err -3'
|
||||
info = -3
|
||||
|
||||
@@ -167,7 +167,7 @@ contains
|
||||
end if
|
||||
|
||||
idxv(1) = idx
|
||||
call idxmap%l2g(idxv,info,owned=owned)
|
||||
call idxmap%l2gip(idxv,info,owned=owned)
|
||||
idx = idxv(1)
|
||||
|
||||
end subroutine hash_l2gs1
|
||||
@@ -182,7 +182,7 @@ contains
|
||||
logical, intent(in), optional :: owned
|
||||
|
||||
idxout = idxin
|
||||
call idxmap%l2g(idxout,info,mask,owned)
|
||||
call idxmap%l2gip(idxout,info,mask,owned)
|
||||
|
||||
end subroutine hash_l2gs2
|
||||
|
||||
@@ -255,7 +255,7 @@ contains
|
||||
is = size(idxin)
|
||||
im = min(is,size(idxout))
|
||||
idxout(1:im) = idxin(1:im)
|
||||
call idxmap%l2g(idxout(1:im),info,mask,owned)
|
||||
call idxmap%l2gip(idxout(1:im),info,mask,owned)
|
||||
if (is > im) then
|
||||
write(0,*) 'l2gv2 err -3'
|
||||
info = -3
|
||||
@@ -279,7 +279,7 @@ contains
|
||||
end if
|
||||
|
||||
idxv(1) = idx
|
||||
call idxmap%g2l(idxv,info,owned=owned)
|
||||
call idxmap%g2lip(idxv,info,owned=owned)
|
||||
idx = idxv(1)
|
||||
|
||||
end subroutine hash_g2ls1
|
||||
@@ -294,7 +294,7 @@ contains
|
||||
logical, intent(in), optional :: owned
|
||||
|
||||
idxout = idxin
|
||||
call idxmap%g2l(idxout,info,mask,owned)
|
||||
call idxmap%g2lip(idxout,info,mask,owned)
|
||||
|
||||
end subroutine hash_g2ls2
|
||||
|
||||
@@ -429,7 +429,7 @@ contains
|
||||
is = size(idxin)
|
||||
im = min(is,size(idxout))
|
||||
idxout(1:im) = idxin(1:im)
|
||||
call idxmap%g2l(idxout(1:im),info,mask,owned)
|
||||
call idxmap%g2lip(idxout(1:im),info,mask,owned)
|
||||
if (is > im) then
|
||||
write(0,*) 'g2lv2 err -3'
|
||||
info = -3
|
||||
@@ -459,9 +459,9 @@ contains
|
||||
idxv(1) = idx
|
||||
if (present(lidx)) then
|
||||
lidxv(1) = lidx
|
||||
call idxmap%g2l_ins(idxv,info,lidx=lidxv)
|
||||
call idxmap%g2lip_ins(idxv,info,lidx=lidxv)
|
||||
else
|
||||
call idxmap%g2l_ins(idxv,info)
|
||||
call idxmap%g2lip_ins(idxv,info)
|
||||
end if
|
||||
idx = idxv(1)
|
||||
|
||||
@@ -478,7 +478,7 @@ contains
|
||||
|
||||
|
||||
idxout = idxin
|
||||
call idxmap%g2l_ins(idxout,info,mask=mask,lidx=lidx)
|
||||
call idxmap%g2lip_ins(idxout,info,mask=mask,lidx=lidx)
|
||||
|
||||
end subroutine hash_g2ls2_ins
|
||||
|
||||
@@ -740,7 +740,7 @@ contains
|
||||
is = size(idxin)
|
||||
im = min(is,size(idxout))
|
||||
idxout(1:im) = idxin(1:im)
|
||||
call idxmap%g2l_ins(idxout(1:im),info,mask=mask,lidx=lidx)
|
||||
call idxmap%g2lip_ins(idxout(1:im),info,mask=mask,lidx=lidx)
|
||||
if (is > im) then
|
||||
write(0,*) 'g2lv2_ins err -3'
|
||||
info = -3
|
||||
|
||||
@@ -163,20 +163,22 @@ module psb_indx_map_mod
|
||||
procedure, pass(idxmap) :: l2gs2 => base_l2gs2
|
||||
procedure, pass(idxmap) :: l2gv1 => base_l2gv1
|
||||
procedure, pass(idxmap) :: l2gv2 => base_l2gv2
|
||||
generic, public :: l2g => l2gs1, l2gs2, l2gv1, l2gv2
|
||||
generic, public :: l2g => l2gs2, l2gv2
|
||||
generic, public :: l2gip => l2gs1, l2gv1
|
||||
|
||||
procedure, pass(idxmap) :: g2ls1 => base_g2ls1
|
||||
procedure, pass(idxmap) :: g2ls2 => base_g2ls2
|
||||
procedure, pass(idxmap) :: g2lv1 => base_g2lv1
|
||||
procedure, pass(idxmap) :: g2lv2 => base_g2lv2
|
||||
generic, public :: g2l => g2ls1, g2ls2, g2lv1, g2lv2
|
||||
generic, public :: g2l => g2ls2, g2lv2
|
||||
generic, public :: g2lip => g2ls1, g2lv1
|
||||
|
||||
procedure, pass(idxmap) :: g2ls1_ins => base_g2ls1_ins
|
||||
procedure, pass(idxmap) :: g2ls2_ins => base_g2ls2_ins
|
||||
procedure, pass(idxmap) :: g2lv1_ins => base_g2lv1_ins
|
||||
procedure, pass(idxmap) :: g2lv2_ins => base_g2lv2_ins
|
||||
generic, public :: g2l_ins => g2ls1_ins, g2ls2_ins,&
|
||||
& g2lv1_ins, g2lv2_ins
|
||||
generic, public :: g2l_ins => g2ls2_ins, g2lv2_ins
|
||||
generic, public :: g2lip_ins => g2ls1_ins, g2lv1_ins
|
||||
|
||||
procedure, pass(idxmap) :: fnd_owner => psb_indx_map_fnd_owner
|
||||
procedure, pass(idxmap) :: init_vl => base_init_vl
|
||||
|
||||
@@ -133,7 +133,7 @@ contains
|
||||
end if
|
||||
|
||||
idxv(1) = idx
|
||||
call idxmap%l2g(idxv,info,owned=owned)
|
||||
call idxmap%l2gip(idxv,info,owned=owned)
|
||||
idx = idxv(1)
|
||||
|
||||
end subroutine list_l2gs1
|
||||
@@ -148,7 +148,7 @@ contains
|
||||
logical, intent(in), optional :: owned
|
||||
|
||||
idxout = idxin
|
||||
call idxmap%l2g(idxout,info,mask,owned)
|
||||
call idxmap%l2gip(idxout,info,mask,owned)
|
||||
|
||||
end subroutine list_l2gs2
|
||||
|
||||
@@ -221,7 +221,7 @@ contains
|
||||
is = size(idxin)
|
||||
im = min(is,size(idxout))
|
||||
idxout(1:im) = idxin(1:im)
|
||||
call idxmap%l2g(idxout(1:im),info,mask,owned)
|
||||
call idxmap%l2gip(idxout(1:im),info,mask,owned)
|
||||
if (is > im) info = -3
|
||||
|
||||
end subroutine list_l2gv2
|
||||
@@ -242,7 +242,7 @@ contains
|
||||
end if
|
||||
|
||||
idxv(1) = idx
|
||||
call idxmap%g2l(idxv,info,owned=owned)
|
||||
call idxmap%g2lip(idxv,info,owned=owned)
|
||||
idx = idxv(1)
|
||||
|
||||
end subroutine list_g2ls1
|
||||
@@ -257,7 +257,7 @@ contains
|
||||
logical, intent(in), optional :: owned
|
||||
|
||||
idxout = idxin
|
||||
call idxmap%g2l(idxout,info,mask,owned)
|
||||
call idxmap%g2lip(idxout,info,mask,owned)
|
||||
|
||||
end subroutine list_g2ls2
|
||||
|
||||
@@ -342,7 +342,7 @@ contains
|
||||
is = size(idxin)
|
||||
im = min(is,size(idxout))
|
||||
idxout(1:im) = idxin(1:im)
|
||||
call idxmap%g2l(idxout(1:im),info,mask,owned)
|
||||
call idxmap%g2lip(idxout(1:im),info,mask,owned)
|
||||
if (is > im) info = -3
|
||||
|
||||
end subroutine list_g2lv2
|
||||
@@ -368,9 +368,9 @@ contains
|
||||
idxv(1) = idx
|
||||
if (present(lidx)) then
|
||||
lidxv(1) = lidx
|
||||
call idxmap%g2l_ins(idxv,info,lidx=lidxv)
|
||||
call idxmap%g2lip_ins(idxv,info,lidx=lidxv)
|
||||
else
|
||||
call idxmap%g2l_ins(idxv,info)
|
||||
call idxmap%g2lip_ins(idxv,info)
|
||||
end if
|
||||
|
||||
idx = idxv(1)
|
||||
@@ -387,7 +387,7 @@ contains
|
||||
integer, intent(in), optional :: lidx
|
||||
|
||||
idxout = idxin
|
||||
call idxmap%g2l_ins(idxout,info,mask=mask,lidx=lidx)
|
||||
call idxmap%g2lip_ins(idxout,info,mask=mask,lidx=lidx)
|
||||
|
||||
end subroutine list_g2ls2_ins
|
||||
|
||||
@@ -545,7 +545,7 @@ contains
|
||||
is = size(idxin)
|
||||
im = min(is,size(idxout))
|
||||
idxout(1:im) = idxin(1:im)
|
||||
call idxmap%g2l_ins(idxout(1:im),info,mask=mask,lidx=lidx)
|
||||
call idxmap%g2lip_ins(idxout(1:im),info,mask=mask,lidx=lidx)
|
||||
if (is > im) info = -3
|
||||
|
||||
end subroutine list_g2lv2_ins
|
||||
|
||||
@@ -117,7 +117,7 @@ contains
|
||||
end if
|
||||
|
||||
idxv(1) = idx
|
||||
call idxmap%l2g(idxv,info,owned=owned)
|
||||
call idxmap%l2gip(idxv,info,owned=owned)
|
||||
idx = idxv(1)
|
||||
|
||||
end subroutine repl_l2gs1
|
||||
@@ -132,7 +132,7 @@ contains
|
||||
logical, intent(in), optional :: owned
|
||||
|
||||
idxout = idxin
|
||||
call idxmap%l2g(idxout,info,mask,owned)
|
||||
call idxmap%l2gip(idxout,info,mask,owned)
|
||||
|
||||
end subroutine repl_l2gs2
|
||||
|
||||
@@ -199,7 +199,7 @@ contains
|
||||
is = size(idxin)
|
||||
im = min(is,size(idxout))
|
||||
idxout(1:im) = idxin(1:im)
|
||||
call idxmap%l2g(idxout(1:im),info,mask,owned)
|
||||
call idxmap%l2gip(idxout(1:im),info,mask,owned)
|
||||
if (is > im) info = -3
|
||||
|
||||
end subroutine repl_l2gv2
|
||||
@@ -220,7 +220,7 @@ contains
|
||||
end if
|
||||
|
||||
idxv(1) = idx
|
||||
call idxmap%g2l(idxv,info,owned=owned)
|
||||
call idxmap%g2lip(idxv,info,owned=owned)
|
||||
idx = idxv(1)
|
||||
|
||||
end subroutine repl_g2ls1
|
||||
@@ -235,7 +235,7 @@ contains
|
||||
logical, intent(in), optional :: owned
|
||||
|
||||
idxout = idxin
|
||||
call idxmap%g2l(idxout,info,mask,owned)
|
||||
call idxmap%g2lip(idxout,info,mask,owned)
|
||||
|
||||
end subroutine repl_g2ls2
|
||||
|
||||
@@ -335,7 +335,7 @@ contains
|
||||
is = size(idxin)
|
||||
im = min(is,size(idxout))
|
||||
idxout(1:im) = idxin(1:im)
|
||||
call idxmap%g2l(idxout(1:im),info,mask,owned)
|
||||
call idxmap%g2lip(idxout(1:im),info,mask,owned)
|
||||
if (is > im) info = -3
|
||||
|
||||
end subroutine repl_g2lv2
|
||||
@@ -361,9 +361,9 @@ contains
|
||||
idxv(1) = idx
|
||||
if (present(lidx)) then
|
||||
lidxv(1) = lidx
|
||||
call idxmap%g2l_ins(idxv,info,lidx=lidxv)
|
||||
call idxmap%g2lip_ins(idxv,info,lidx=lidxv)
|
||||
else
|
||||
call idxmap%g2l_ins(idxv,info)
|
||||
call idxmap%g2lip_ins(idxv,info)
|
||||
end if
|
||||
idx = idxv(1)
|
||||
|
||||
@@ -379,7 +379,7 @@ contains
|
||||
integer, intent(in), optional :: lidx
|
||||
|
||||
idxout = idxin
|
||||
call idxmap%g2l_ins(idxout,info,mask=mask,lidx=lidx)
|
||||
call idxmap%g2lip_ins(idxout,info,mask=mask,lidx=lidx)
|
||||
|
||||
end subroutine repl_g2ls2_ins
|
||||
|
||||
@@ -484,7 +484,7 @@ contains
|
||||
is = size(idxin)
|
||||
im = min(is,size(idxout))
|
||||
idxout(1:im) = idxin(1:im)
|
||||
call idxmap%g2l_ins(idxout(1:im),info,mask=mask,lidx=lidx)
|
||||
call idxmap%g2lip_ins(idxout(1:im),info,mask=mask,lidx=lidx)
|
||||
if (is > im) info = -3
|
||||
|
||||
end subroutine repl_g2lv2_ins
|
||||
|
||||
Reference in New Issue
Block a user