Rev 85757 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed
The reference BLAS sources are part of the netlib LAPACK distribution.They goes way back in R and were moved to this directory in 2006. Thenetlib sources had been commented and extensively re-formatted since.Various double and complex routines were patched in 2006 in c53001.Routine ZHER2K was patched in 2013 in c62981.In all cases to avoid optimizations which set x*0 = 0 even if x was Inf or NaN.This patching was redone in 2022.complex*16 was changed to double complex, as that is what is used in R.File blas.f containsdasum daxpy dcopy ddot dgbmv dgemm dgemv dger drot drotm drotmg dsbmvdscal dsdot dspmv dspr2 dspr dswap dsymm dsymv dsyr2 dsyr2k dsyr dsyrkdtbmv dtbsv dtpmv dtpsv dtrmm dtrmv dtrsm dtrsv idamax lsameIn LAPACK 3.10.0 dnrm2 and drotg were re-written in F90 using min/maxexponent,so blas2.f90 contains those routines.File cmplxblas.f containsdcabs1 dzasum izamax zaxpy zcopy zdotc zdotu zdrot zdscal zgbmv zgemmzgemv zgerc zgeru zhbmv zhemm zhemv zher2 zher2k zher zherk zhpmvzhpr2 zhpr zscal zswap zsymm zsyr2k zsyrk ztbmv ztbsv ztpmv ztpsvztrmm ztrmv ztrsm ztrsvcmplxblas2.f90 contains dznrm2 and zrotgdgemmtr and zgemmtr were added for LAPACK 3.12.1 in R 4.5.0.----------------------------------------cd lapack-3.12.1/BLAS/SRCcat dasum.f daxpy.f dcopy.f ddot.f dgbmv.f dgemm.f dgemmtr.f dgemv.f dger.f drot.f drotm.f drotmg.f dsbmv.f dscal.f dsdot.f dspmv.f dspr2.f dspr.f dswap.f dsymm.f dsymv.f dsyr2.f dsyr2k.f dsyr.f dsyrk.f dtbmv.f dtbsv.f dtpmv.f dtpsv.f dtrmm.f dtrmv.f dtrsm.f dtrsv.f idamax.f lsame.f > ../../blas.fcat dnrm2.f90 drotg.f90 > ../..//blas2.f90cat dcabs1.f dzasum.f izamax.f zaxpy.f zcopy.f zdotc.f zdotu.f zdrot.f zdscal.f zgbmv.f zgemm.f zgemmtr.f zgemv.f zgerc.f zgeru.f zhbmv.f zhemm.f zhemv.f zher2.f zher2k.f zher.f zherk.f zhpmv.f zhpr2.f zhpr.f zscal.f zswap.f zsymm.f zsyr2k.f zsyrk.f ztbmv.f ztbsv.f ztpmv.f ztpsv.f ztrmm.f ztrmv.f ztrsm.f ztrsv.f > ../../cmplxblas.fcat dznrm2.f90 zrotg.f90 > ../../cmplxblas2.f90In cmplxblas.f, s/COMPLEX[*]16/DOUBLE COMPLEX/g