Further changes for E/M/I/L integer precisions.

ILmat
Salvatore Filippone 8 years ago
parent c4af410cfc
commit f862fe048a

@ -261,7 +261,7 @@ subroutine psb_indx_map_fnd_owner(idx,iprc,idxmap,info)
do
if (j > size(answers,1)) then
! Last resort attempt.
j = psb_ibsrch(ih,size(answers,1,kind=psb_ipk_),answers(:,1))
j = psb_bsrch(ih,size(answers,1,kind=psb_ipk_),answers(:,1))
if (j == -1) then
write(psb_err_unit,*) me,'psi_fnd_owner: searching for ',ih, &
& 'not found : ',size(answers,1),':',answers(:,1)
@ -273,7 +273,7 @@ subroutine psb_indx_map_fnd_owner(idx,iprc,idxmap,info)
if (answers(j,1) == ih) exit
if (answers(j,1) > ih) then
k = j
j = psb_ibsrch(ih,k,answers(1:k,1))
j = psb_bsrch(ih,k,answers(1:k,1))
if (j == -1) then
write(psb_err_unit,*) me,'psi_fnd_owner: searching for ',ih, &
& 'not found : ',size(answers,1),':',answers(:,1)

@ -100,7 +100,13 @@ $(LIBDIR)/$(LIBNAME): $(MODULES) $(OBJS) $(MPFOBJS)
psb_error_mod.o: psb_const_mod.o
psb_realloc_mod.o: psb_error_mod.o
psb_realloc_mod.o \
auxil/psb_m_realloc_mod.o \
auxil/psb_e_realloc_mod.o \
auxil/psb_s_realloc_mod.o \
auxil/psb_d_realloc_mod.o \
auxil/psb_c_realloc_mod.o \
auxil/psb_z_realloc_mod.o: psb_error_mod.o
$(UTIL_MODS): $(BASIC_MODS)
psi_penv_mod.o: psi_comm_buffers_mod.o

@ -63,7 +63,7 @@ module psb_c_msort_mod
end subroutine psb_cmsort
end interface psb_msort
interface
interface psi_lmsort_up
subroutine psi_c_lmsort_up(n,k,l,iret)
import
implicit none
@ -71,6 +71,8 @@ module psb_c_msort_mod
complex(psb_spk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_c_lmsort_up
end interface psi_lmsort_up
interface psi_lmsort_dw
subroutine psi_c_lmsort_dw(n,k,l,iret)
import
implicit none
@ -78,6 +80,8 @@ module psb_c_msort_mod
complex(psb_spk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_c_lmsort_dw
end interface psi_lmsort_dw
interface psi_almsort_up
subroutine psi_c_almsort_up(n,k,l,iret)
import
implicit none
@ -85,6 +89,8 @@ module psb_c_msort_mod
complex(psb_spk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_c_almsort_up
end interface psi_almsort_up
interface psi_almsort_dw
subroutine psi_c_almsort_dw(n,k,l,iret)
import
implicit none
@ -92,8 +98,8 @@ module psb_c_msort_mod
complex(psb_spk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_c_almsort_dw
end interface
interface
end interface psi_almsort_dw
interface psi_amsort_up
subroutine psi_c_amsort_up(n,k,l,iret)
import
implicit none
@ -101,6 +107,8 @@ module psb_c_msort_mod
complex(psb_spk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_c_amsort_up
end interface psi_amsort_up
interface psi_amsort_dw
subroutine psi_c_amsort_dw(n,k,l,iret)
import
implicit none
@ -108,6 +116,6 @@ module psb_c_msort_mod
complex(psb_spk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_c_amsort_dw
end interface
end interface psi_amsort_dw
end module psb_c_msort_mod

@ -64,7 +64,7 @@ module psb_d_msort_mod
end interface psb_msort
interface
interface psi_msort_up
subroutine psi_d_msort_up(n,k,l,iret)
import
implicit none
@ -72,6 +72,8 @@ module psb_d_msort_mod
real(psb_dpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_d_msort_up
end interface psi_msort_up
interface psi_msort_dw
subroutine psi_d_msort_dw(n,k,l,iret)
import
implicit none
@ -79,8 +81,8 @@ module psb_d_msort_mod
real(psb_dpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_d_msort_dw
end interface
interface
end interface psi_msort_dw
interface psi_amsort_up
subroutine psi_d_amsort_up(n,k,l,iret)
import
implicit none
@ -88,6 +90,8 @@ module psb_d_msort_mod
real(psb_dpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_d_amsort_up
end interface psi_amsort_up
interface psi_amsort_dw
subroutine psi_d_amsort_dw(n,k,l,iret)
import
implicit none
@ -95,6 +99,6 @@ module psb_d_msort_mod
real(psb_dpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_d_amsort_dw
end interface
end interface psi_amsort_dw
end module psb_d_msort_mod

@ -71,7 +71,7 @@ module psb_e_msort_mod
end interface psb_msort
interface
interface psi_msort_up
subroutine psi_e_msort_up(n,k,l,iret)
import
implicit none
@ -79,6 +79,8 @@ module psb_e_msort_mod
integer(psb_epk_) :: k(n)
integer(psb_epk_) :: l(0:n+1)
end subroutine psi_e_msort_up
end interface psi_msort_up
interface psi_msort_dw
subroutine psi_e_msort_dw(n,k,l,iret)
import
implicit none
@ -86,8 +88,8 @@ module psb_e_msort_mod
integer(psb_epk_) :: k(n)
integer(psb_epk_) :: l(0:n+1)
end subroutine psi_e_msort_dw
end interface
interface
end interface psi_msort_dw
interface psi_amsort_up
subroutine psi_e_amsort_up(n,k,l,iret)
import
implicit none
@ -95,6 +97,8 @@ module psb_e_msort_mod
integer(psb_epk_) :: k(n)
integer(psb_epk_) :: l(0:n+1)
end subroutine psi_e_amsort_up
end interface psi_amsort_up
interface psi_amsort_dw
subroutine psi_e_amsort_dw(n,k,l,iret)
import
implicit none
@ -102,6 +106,6 @@ module psb_e_msort_mod
integer(psb_epk_) :: k(n)
integer(psb_epk_) :: l(0:n+1)
end subroutine psi_e_amsort_dw
end interface
end interface psi_amsort_dw
end module psb_e_msort_mod

@ -71,7 +71,7 @@ module psb_m_msort_mod
end interface psb_msort
interface
interface psi_msort_up
subroutine psi_m_msort_up(n,k,l,iret)
import
implicit none
@ -79,6 +79,8 @@ module psb_m_msort_mod
integer(psb_mpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_m_msort_up
end interface psi_msort_up
interface psi_msort_dw
subroutine psi_m_msort_dw(n,k,l,iret)
import
implicit none
@ -86,8 +88,8 @@ module psb_m_msort_mod
integer(psb_mpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_m_msort_dw
end interface
interface
end interface psi_msort_dw
interface psi_amsort_up
subroutine psi_m_amsort_up(n,k,l,iret)
import
implicit none
@ -95,6 +97,8 @@ module psb_m_msort_mod
integer(psb_mpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_m_amsort_up
end interface psi_amsort_up
interface psi_amsort_dw
subroutine psi_m_amsort_dw(n,k,l,iret)
import
implicit none
@ -102,6 +106,6 @@ module psb_m_msort_mod
integer(psb_mpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_m_amsort_dw
end interface
end interface psi_amsort_dw
end module psb_m_msort_mod

@ -64,7 +64,7 @@ module psb_s_msort_mod
end interface psb_msort
interface
interface psi_msort_up
subroutine psi_s_msort_up(n,k,l,iret)
import
implicit none
@ -72,6 +72,8 @@ module psb_s_msort_mod
real(psb_spk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_s_msort_up
end interface psi_msort_up
interface psi_msort_dw
subroutine psi_s_msort_dw(n,k,l,iret)
import
implicit none
@ -79,8 +81,8 @@ module psb_s_msort_mod
real(psb_spk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_s_msort_dw
end interface
interface
end interface psi_msort_dw
interface psi_amsort_up
subroutine psi_s_amsort_up(n,k,l,iret)
import
implicit none
@ -88,6 +90,8 @@ module psb_s_msort_mod
real(psb_spk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_s_amsort_up
end interface psi_amsort_up
interface psi_amsort_dw
subroutine psi_s_amsort_dw(n,k,l,iret)
import
implicit none
@ -95,6 +99,6 @@ module psb_s_msort_mod
real(psb_spk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_s_amsort_dw
end interface
end interface psi_amsort_dw
end module psb_s_msort_mod

@ -63,7 +63,7 @@ module psb_z_msort_mod
end subroutine psb_zmsort
end interface psb_msort
interface
interface psi_lmsort_up
subroutine psi_z_lmsort_up(n,k,l,iret)
import
implicit none
@ -71,6 +71,8 @@ module psb_z_msort_mod
complex(psb_dpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_z_lmsort_up
end interface psi_lmsort_up
interface psi_lmsort_dw
subroutine psi_z_lmsort_dw(n,k,l,iret)
import
implicit none
@ -78,6 +80,8 @@ module psb_z_msort_mod
complex(psb_dpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_z_lmsort_dw
end interface psi_lmsort_dw
interface psi_almsort_up
subroutine psi_z_almsort_up(n,k,l,iret)
import
implicit none
@ -85,6 +89,8 @@ module psb_z_msort_mod
complex(psb_dpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_z_almsort_up
end interface psi_almsort_up
interface psi_almsort_dw
subroutine psi_z_almsort_dw(n,k,l,iret)
import
implicit none
@ -92,8 +98,8 @@ module psb_z_msort_mod
complex(psb_dpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_z_almsort_dw
end interface
interface
end interface psi_almsort_dw
interface psi_amsort_up
subroutine psi_z_amsort_up(n,k,l,iret)
import
implicit none
@ -101,6 +107,8 @@ module psb_z_msort_mod
complex(psb_dpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_z_amsort_up
end interface psi_amsort_up
interface psi_amsort_dw
subroutine psi_z_amsort_dw(n,k,l,iret)
import
implicit none
@ -108,6 +116,6 @@ module psb_z_msort_mod
complex(psb_dpk_) :: k(n)
integer(psb_ipk_) :: l(0:n+1)
end subroutine psi_z_amsort_dw
end interface
end interface psi_amsort_dw
end module psb_z_msort_mod

@ -3365,6 +3365,7 @@ subroutine psb_c_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
use psb_c_base_mat_mod, psb_protect_name => psb_c_fix_coo_inner
use psb_string_mod
use psb_ip_reord_mod
use psb_sort_mod
implicit none
integer(psb_ipk_), intent(in) :: nr, nc, nzin, dupl
@ -3451,7 +3452,7 @@ subroutine psb_c_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,ja(i:imx),ix2,iret)
call psi_msort_up(nzl,ja(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:imx),&
& ia(i:imx),ja(i:imx),ix2)
@ -3562,7 +3563,7 @@ subroutine psb_c_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,jas(i:imx),ix2,iret)
call psi_msort_up(nzl,jas(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,vs(i:imx),&
& ias(i:imx),jas(i:imx),ix2)
@ -3655,7 +3656,7 @@ subroutine psb_c_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
! If we did not have enough memory for buffers,
! let's try in place.
!
call psi_i_msort_up(nzin,ia(1:),iaux(1:),iret)
call psi_msort_up(nzin,ia(1:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzin,val,ia,ja,iaux)
i = 1
@ -3667,7 +3668,7 @@ subroutine psb_c_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
if (j > nzin) exit
enddo
nzl = j - i
call psi_i_msort_up(nzl,ja(i:),iaux(1:),iret)
call psi_msort_up(nzl,ja(i:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:i+nzl-1),&
& ia(i:i+nzl-1),ja(i:i+nzl-1),iaux)
@ -3774,7 +3775,7 @@ subroutine psb_c_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,ia(i:imx),ix2,iret)
call psi_msort_up(nzl,ia(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:imx),&
& ia(i:imx),ja(i:imx),ix2)
@ -3883,7 +3884,7 @@ subroutine psb_c_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,ias(i:imx),ix2,iret)
call psi_msort_up(nzl,ias(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,vs(i:imx),&
& ias(i:imx),jas(i:imx),ix2)
@ -3970,7 +3971,7 @@ subroutine psb_c_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
else if (.not.use_buffers) then
call psi_i_msort_up(nzin,ja(1:),iaux(1:),iret)
call psi_msort_up(nzin,ja(1:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzin,val,ia,ja,iaux)
i = 1
@ -3981,7 +3982,7 @@ subroutine psb_c_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
if (j > nzin) exit
enddo
nzl = j - i
call psi_i_msort_up(nzl,ia(i:),iaux(1:),iret)
call psi_msort_up(nzl,ia(i:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:i+nzl-1),&
& ia(i:i+nzl-1),ja(i:i+nzl-1),iaux)

@ -3365,6 +3365,7 @@ subroutine psb_d_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
use psb_d_base_mat_mod, psb_protect_name => psb_d_fix_coo_inner
use psb_string_mod
use psb_ip_reord_mod
use psb_sort_mod
implicit none
integer(psb_ipk_), intent(in) :: nr, nc, nzin, dupl
@ -3451,7 +3452,7 @@ subroutine psb_d_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,ja(i:imx),ix2,iret)
call psi_msort_up(nzl,ja(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:imx),&
& ia(i:imx),ja(i:imx),ix2)
@ -3562,7 +3563,7 @@ subroutine psb_d_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,jas(i:imx),ix2,iret)
call psi_msort_up(nzl,jas(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,vs(i:imx),&
& ias(i:imx),jas(i:imx),ix2)
@ -3655,7 +3656,7 @@ subroutine psb_d_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
! If we did not have enough memory for buffers,
! let's try in place.
!
call psi_i_msort_up(nzin,ia(1:),iaux(1:),iret)
call psi_msort_up(nzin,ia(1:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzin,val,ia,ja,iaux)
i = 1
@ -3667,7 +3668,7 @@ subroutine psb_d_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
if (j > nzin) exit
enddo
nzl = j - i
call psi_i_msort_up(nzl,ja(i:),iaux(1:),iret)
call psi_msort_up(nzl,ja(i:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:i+nzl-1),&
& ia(i:i+nzl-1),ja(i:i+nzl-1),iaux)
@ -3774,7 +3775,7 @@ subroutine psb_d_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,ia(i:imx),ix2,iret)
call psi_msort_up(nzl,ia(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:imx),&
& ia(i:imx),ja(i:imx),ix2)
@ -3883,7 +3884,7 @@ subroutine psb_d_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,ias(i:imx),ix2,iret)
call psi_msort_up(nzl,ias(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,vs(i:imx),&
& ias(i:imx),jas(i:imx),ix2)
@ -3970,7 +3971,7 @@ subroutine psb_d_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
else if (.not.use_buffers) then
call psi_i_msort_up(nzin,ja(1:),iaux(1:),iret)
call psi_msort_up(nzin,ja(1:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzin,val,ia,ja,iaux)
i = 1
@ -3981,7 +3982,7 @@ subroutine psb_d_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
if (j > nzin) exit
enddo
nzl = j - i
call psi_i_msort_up(nzl,ia(i:),iaux(1:),iret)
call psi_msort_up(nzl,ia(i:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:i+nzl-1),&
& ia(i:i+nzl-1),ja(i:i+nzl-1),iaux)

@ -3365,6 +3365,7 @@ subroutine psb_s_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
use psb_s_base_mat_mod, psb_protect_name => psb_s_fix_coo_inner
use psb_string_mod
use psb_ip_reord_mod
use psb_sort_mod
implicit none
integer(psb_ipk_), intent(in) :: nr, nc, nzin, dupl
@ -3451,7 +3452,7 @@ subroutine psb_s_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,ja(i:imx),ix2,iret)
call psi_msort_up(nzl,ja(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:imx),&
& ia(i:imx),ja(i:imx),ix2)
@ -3562,7 +3563,7 @@ subroutine psb_s_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,jas(i:imx),ix2,iret)
call psi_msort_up(nzl,jas(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,vs(i:imx),&
& ias(i:imx),jas(i:imx),ix2)
@ -3655,7 +3656,7 @@ subroutine psb_s_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
! If we did not have enough memory for buffers,
! let's try in place.
!
call psi_i_msort_up(nzin,ia(1:),iaux(1:),iret)
call psi_msort_up(nzin,ia(1:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzin,val,ia,ja,iaux)
i = 1
@ -3667,7 +3668,7 @@ subroutine psb_s_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
if (j > nzin) exit
enddo
nzl = j - i
call psi_i_msort_up(nzl,ja(i:),iaux(1:),iret)
call psi_msort_up(nzl,ja(i:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:i+nzl-1),&
& ia(i:i+nzl-1),ja(i:i+nzl-1),iaux)
@ -3774,7 +3775,7 @@ subroutine psb_s_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,ia(i:imx),ix2,iret)
call psi_msort_up(nzl,ia(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:imx),&
& ia(i:imx),ja(i:imx),ix2)
@ -3883,7 +3884,7 @@ subroutine psb_s_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,ias(i:imx),ix2,iret)
call psi_msort_up(nzl,ias(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,vs(i:imx),&
& ias(i:imx),jas(i:imx),ix2)
@ -3970,7 +3971,7 @@ subroutine psb_s_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
else if (.not.use_buffers) then
call psi_i_msort_up(nzin,ja(1:),iaux(1:),iret)
call psi_msort_up(nzin,ja(1:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzin,val,ia,ja,iaux)
i = 1
@ -3981,7 +3982,7 @@ subroutine psb_s_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
if (j > nzin) exit
enddo
nzl = j - i
call psi_i_msort_up(nzl,ia(i:),iaux(1:),iret)
call psi_msort_up(nzl,ia(i:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:i+nzl-1),&
& ia(i:i+nzl-1),ja(i:i+nzl-1),iaux)

@ -3365,6 +3365,7 @@ subroutine psb_z_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
use psb_z_base_mat_mod, psb_protect_name => psb_z_fix_coo_inner
use psb_string_mod
use psb_ip_reord_mod
use psb_sort_mod
implicit none
integer(psb_ipk_), intent(in) :: nr, nc, nzin, dupl
@ -3451,7 +3452,7 @@ subroutine psb_z_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,ja(i:imx),ix2,iret)
call psi_msort_up(nzl,ja(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:imx),&
& ia(i:imx),ja(i:imx),ix2)
@ -3562,7 +3563,7 @@ subroutine psb_z_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,jas(i:imx),ix2,iret)
call psi_msort_up(nzl,jas(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,vs(i:imx),&
& ias(i:imx),jas(i:imx),ix2)
@ -3655,7 +3656,7 @@ subroutine psb_z_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
! If we did not have enough memory for buffers,
! let's try in place.
!
call psi_i_msort_up(nzin,ia(1:),iaux(1:),iret)
call psi_msort_up(nzin,ia(1:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzin,val,ia,ja,iaux)
i = 1
@ -3667,7 +3668,7 @@ subroutine psb_z_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
if (j > nzin) exit
enddo
nzl = j - i
call psi_i_msort_up(nzl,ja(i:),iaux(1:),iret)
call psi_msort_up(nzl,ja(i:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:i+nzl-1),&
& ia(i:i+nzl-1),ja(i:i+nzl-1),iaux)
@ -3774,7 +3775,7 @@ subroutine psb_z_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,ia(i:imx),ix2,iret)
call psi_msort_up(nzl,ia(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:imx),&
& ia(i:imx),ja(i:imx),ix2)
@ -3883,7 +3884,7 @@ subroutine psb_z_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
imx = i+nzl-1
if (nzl > 0) then
call psi_i_msort_up(nzl,ias(i:imx),ix2,iret)
call psi_msort_up(nzl,ias(i:imx),ix2,iret)
if (iret == 0) &
& call psb_ip_reord(nzl,vs(i:imx),&
& ias(i:imx),jas(i:imx),ix2)
@ -3970,7 +3971,7 @@ subroutine psb_z_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
else if (.not.use_buffers) then
call psi_i_msort_up(nzin,ja(1:),iaux(1:),iret)
call psi_msort_up(nzin,ja(1:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzin,val,ia,ja,iaux)
i = 1
@ -3981,7 +3982,7 @@ subroutine psb_z_fix_coo_inner(nr,nc,nzin,dupl,ia,ja,val,nzout,info,idir)
if (j > nzin) exit
enddo
nzl = j - i
call psi_i_msort_up(nzl,ia(i:),iaux(1:),iret)
call psi_msort_up(nzl,ia(i:),iaux(1:),iret)
if (iret == 0) &
& call psb_ip_reord(nzl,val(i:i+nzl-1),&
& ia(i:i+nzl-1),ja(i:i+nzl-1),iaux)

@ -4,8 +4,8 @@ include ../../../Make.inc
# The object files
#
BOBJS=psi_lcx_mod.o psi_alcx_mod.o psi_acx_mod.o
IOBJS=psb_i_hsort_impl.o psb_i_isort_impl.o psb_i_msort_impl.o psb_i_qsort_impl.o
LOBJS=psb_l_hsort_impl.o psb_l_isort_impl.o psb_l_msort_impl.o psb_l_qsort_impl.o
IOBJS=psb_m_hsort_impl.o psb_m_isort_impl.o psb_m_msort_impl.o psb_m_qsort_impl.o
LOBJS=psb_e_hsort_impl.o psb_e_isort_impl.o psb_e_msort_impl.o psb_e_qsort_impl.o
SOBJS=psb_s_hsort_impl.o psb_s_isort_impl.o psb_s_msort_impl.o psb_s_qsort_impl.o
DOBJS=psb_d_hsort_impl.o psb_d_isort_impl.o psb_d_msort_impl.o psb_d_qsort_impl.o
COBJS=psb_c_hsort_impl.o psb_c_isort_impl.o psb_c_msort_impl.o psb_c_qsort_impl.o

Loading…
Cancel
Save