Date: Fri, 21 Nov 1997 12:43:54 -0800 (PST) From: giffunip@asme.org To: freebsd-gnats-submit@FreeBSD.ORG Subject: ports/5120: Update to BLAS lib. (math port) Message-ID: <199711212043.MAA09995@hub.freebsd.org> Resent-Message-ID: <199711212050.MAA10515@hub.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 5120 >Category: ports >Synopsis: Update to BLAS lib. (math port) >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports >State: open >Class: change-request >Submitter-Id: current-users >Arrival-Date: Fri Nov 21 12:50:00 PST 1997 >Last-Modified: >Originator: Pedro Giffuni S. >Organization: U. Nacional de Colombia >Release: 2.2.5-Release >Environment: >Description: BLAS was incomplete, so I found a file in Netlib that listed the required files for the update: I also noted some files that didnt work with our f77 were not required after all. I also changed the name to libblas (it was libcor) because other ports (being prepared) look for libblas.* >How-To-Repeat: linpack, eispack, and lapack ports, most be modified (slightly) to use libblas instead of libcor. Also note I nuked Makefile.lib and provided files/makefile.lib >Fix: diff -rNu /cdrom/ports/math/blas/Makefile blas/Makefile --- /cdrom/ports/math/blas/Makefile Thu Jul 17 10:12:52 1997 +++ blas/Makefile Fri Nov 21 15:01:06 1997 @@ -12,15 +12,6 @@ MASTER_SITES= ftp://netlib.bell-labs.com/netlib/blas/ \ ftp://ftp.netlib.org/blas/ -# NOTE: -# The files [dir]1mach.f were updated on the master site but -# FreeBSD's f77 can't handle them. patches/patch-aa reverts -# these files to a previous revision but should be removed when -# FreeBSD's f77 gets fixed. -# -# The alternative is: -#BROKEN= "Our f77 cannot compile d1mach.f" - DIST_SUBDIR= ${DISTNAME} EXTRACT_CMD= ${SCRIPTDIR}/uncomp @@ -29,34 +20,40 @@ NO_WRKSUBDIR= yes -SRCS = caxpy.f cblas1.f cblas2.f ccopy.f cdotc.f cdotu.f cgbmv.f cgemv.f \ - cgerc.f cgeru.f chbmv.f chemv.f cher.f cher2.f chpmv.f chpr.f \ - chpr2.f cmach.f crotg.f cscal.f csrot.f csscal.f cswap.f ctbmv.f \ - ctbsv.f ctpmv.f ctpsv.f ctrmv.f ctrsv.f d1mach.f dasum.f daxpy.f \ - dblas1.f dblas2.f dcopy.f ddot.f dgbmv.f dgemv.f dger.f dmach.f \ - dnrm2.f drot.f drotg.f dsbmv.f dscal.f dspmv.f dspr.f dspr2.f \ - dswap.f dsymv.f dsyr.f dsyr2.f dtbmv.f dtbsv.f dtpmv.f dtpsv.f \ - dtrmv.f dtrsv.f esblas2.f esgbmv.f esgemv.f esger.f essbmv.f \ - esspmv.f esspr.f esspr2.f essymv.f essyr.f essyr2.f estbmv.f \ - estbsv.f estpmv.f estpsv.f estrmv.f estrsv.f \ - i1mach.f \ - icamax.f idamax.f isamax.f lsame.f r1mach.f sasum.f saxpy.f \ - sblas1.f sblas2.f scasum.f scnrm2.f scopy.f sdot.f sgbmv.f sgemv.f \ - sger.f smach.f snrm2.f srot.f srotg.f ssbmv.f sscal.f sspmv.f \ - sspr.f sspr2.f sswap.f ssymv.f ssyr.f ssyr2.f stbmv.f stbsv.f \ - stpmv.f stpsv.f strmv.f strsv.f xerbla.f - -# fdump.f +# NOTE: The list of files was taken from the blas.shar file in Netlib +# made 06/06/1996 16:26 UTC by susan@rudolph +# +SRCS = caxpy.f ccopy.f cdotc.f cdotu.f cgbmv.f cgemm.f cgemv.f \ + cgerc.f cgeru.f chbmv.f chemm.f chemv.f cher.f cher2.f \ + cher2k.f cherk.f chpmv.f chpr.f chpr2.f crotg.f cscal.f \ + csrot.f csscal.f cswap.f csymm.f csyr2k.f csyrk.f ctbmv.f \ + ctbsv.f ctpmv.f ctpsv.f ctrmm.f ctrmv.f ctrsm.f ctrsv.f \ + dasum.f daxpy.f dcabs1.f dcopy.f ddot.f dgbmv.f dgemm.f \ + dgemv.f dger.f dnrm2.f drot.f drotg.f drotm.f drotmg.f \ + dsbmv.f dscal.f dsdot.f dspmv.f dspr.f dspr2.f dswap.f \ + dsymm.f dsymv.f dsyr.f dsyr2.f dsyr2k.f dsyrk.f dtbmv.f \ + dtbsv.f dtpmv.f dtpsv.f dtrmm.f dtrmv.f dtrsm.f dtrsv.f \ + dzasum.f dznrm2.f icamax.f idamax.f isamax.f izamax.f lsame.f \ + sasum.f saxpy.f scasum.f scnrm2.f scopy.f sdot.f sdsdot.f \ + sgbmv.f sgemm.f sgemv.f sger.f snrm2.f srot.f srotg.f \ + srotm.f srotmg.f ssbmv.f sscal.f sspmv.f sspr.f sspr2.f \ + sswap.f ssymm.f ssymv.f ssyr.f ssyr2.f ssyr2k.f ssyrk.f \ + stbmv.f stbsv.f stpmv.f stpsv.f strmm.f strmv.f strsm.f \ + strsv.f xerbla.f zaxpy.f zcopy.f zdotc.f zdotu.f zdrot.f \ + zdscal.f zgbmv.f zgemm.f zgemv.f zgerc.f zgeru.f zhbmv.f \ + zhemm.f zhemv.f zher.f zher2.f zher2k.f zherk.f zhpmv.f \ + zhpr.f zhpr2.f zrotg.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 DISTFILES= ${SRCS:.f=.f.Z} pre-build: - cp Makefile.lib ${WRKDIR}/Makefile + cp $(FILESDIR)/makefile.lib ${WRKDIR}/Makefile pre-extract: chmod +x ${SCRIPTDIR}/uncomp post-install: ${LDCONFIG} -m ${PREFIX}/lib - .include <bsd.port.mk> diff -rNu /cdrom/ports/math/blas/Makefile.lib blas/Makefile.lib --- /cdrom/ports/math/blas/Makefile.lib Wed Apr 2 20:11:01 1997 +++ blas/Makefile.lib Wed Dec 31 19:00:00 1969 @@ -1,29 +0,0 @@ -# @(#)Makefile 5.7 (Berkeley) 6/27/91 -LIBDIR= ${PREFIX}/lib -NOPROFILE= no - -SHLIB_MAJOR= 1 -SHLIB_MINOR= 0 - -# BLAS sources -LIB=cor -#NOPROFILE=1 -SRCS = caxpy.f cblas1.f cblas2.f ccopy.f cdotc.f cdotu.f cgbmv.f cgemv.f \ - cgerc.f cgeru.f chbmv.f chemv.f cher.f cher2.f chpmv.f chpr.f \ - chpr2.f cmach.f crotg.f cscal.f csrot.f csscal.f cswap.f ctbmv.f \ - ctbsv.f ctpmv.f ctpsv.f ctrmv.f ctrsv.f d1mach.f dasum.f daxpy.f \ - dblas1.f dblas2.f dcopy.f ddot.f dgbmv.f dgemv.f dger.f dmach.f \ - dnrm2.f drot.f drotg.f dsbmv.f dscal.f dspmv.f dspr.f dspr2.f \ - dswap.f dsymv.f dsyr.f dsyr2.f dtbmv.f dtbsv.f dtpmv.f dtpsv.f \ - dtrmv.f dtrsv.f esblas2.f esgbmv.f esgemv.f esger.f essbmv.f \ - esspmv.f esspr.f esspr2.f essymv.f essyr.f essyr2.f estbmv.f \ - estbsv.f estpmv.f estpsv.f estrmv.f estrsv.f \ - i1mach.f \ - icamax.f idamax.f isamax.f lsame.f r1mach.f sasum.f saxpy.f \ - sblas1.f sblas2.f scasum.f scnrm2.f scopy.f sdot.f sgbmv.f sgemv.f \ - sger.f smach.f snrm2.f srot.f srotg.f ssbmv.f sscal.f sspmv.f \ - sspr.f sspr2.f sswap.f ssymv.f ssyr.f ssyr2.f stbmv.f stbsv.f \ - stpmv.f stpsv.f strmv.f strsv.f xerbla.f -CLEANFILES+= *.c - -.include <bsd.lib.mk> diff -rNu /cdrom/ports/math/blas/files/makefile.lib blas/files/makefile.lib --- /cdrom/ports/math/blas/files/makefile.lib Wed Dec 31 19:00:00 1969 +++ blas/files/makefile.lib Fri Nov 21 13:22:14 1997 @@ -0,0 +1,39 @@ +# @(#)Makefile 5.7 (Berkeley) 6/27/91 +LIBDIR= ${PREFIX}/lib +NOPROFILE= no + +SHLIB_MAJOR= 1 +SHLIB_MINOR= 0 + +# BLAS sources +LIB=blas +#NOPROFILE=1 +# NOTE: The list of files was taken from the blas.shar file in Netlib +# made 06/06/1996 16:26 UTC by susan@rudolph +# +SRCS = caxpy.f ccopy.f cdotc.f cdotu.f cgbmv.f cgemm.f cgemv.f \ + cgerc.f cgeru.f chbmv.f chemm.f chemv.f cher.f cher2.f \ + cher2k.f cherk.f chpmv.f chpr.f chpr2.f crotg.f cscal.f \ + csrot.f csscal.f cswap.f csymm.f csyr2k.f csyrk.f ctbmv.f \ + ctbsv.f ctpmv.f ctpsv.f ctrmm.f ctrmv.f ctrsm.f ctrsv.f \ + dasum.f daxpy.f dcabs1.f dcopy.f ddot.f dgbmv.f dgemm.f \ + dgemv.f dger.f dnrm2.f drot.f drotg.f drotm.f drotmg.f \ + dsbmv.f dscal.f dsdot.f dspmv.f dspr.f dspr2.f dswap.f \ + dsymm.f dsymv.f dsyr.f dsyr2.f dsyr2k.f dsyrk.f dtbmv.f \ + dtbsv.f dtpmv.f dtpsv.f dtrmm.f dtrmv.f dtrsm.f dtrsv.f \ + dzasum.f dznrm2.f icamax.f idamax.f isamax.f izamax.f lsame.f \ + sasum.f saxpy.f scasum.f scnrm2.f scopy.f sdot.f sdsdot.f \ + sgbmv.f sgemm.f sgemv.f sger.f snrm2.f srot.f srotg.f \ + srotm.f srotmg.f ssbmv.f sscal.f sspmv.f sspr.f sspr2.f \ + sswap.f ssymm.f ssymv.f ssyr.f ssyr2.f ssyr2k.f ssyrk.f \ + stbmv.f stbsv.f stpmv.f stpsv.f strmm.f strmv.f strsm.f \ + strsv.f xerbla.f zaxpy.f zcopy.f zdotc.f zdotu.f zdrot.f \ + zdscal.f zgbmv.f zgemm.f zgemv.f zgerc.f zgeru.f zhbmv.f \ + zhemm.f zhemv.f zher.f zher2.f zher2k.f zherk.f zhpmv.f \ + zhpr.f zhpr2.f zrotg.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 + +CLEANFILES+= *.c + +.include <bsd.lib.mk> diff -rNu /cdrom/ports/math/blas/files/md5 blas/files/md5 --- /cdrom/ports/math/blas/files/md5 Wed Apr 2 20:11:20 1997 +++ blas/files/md5 Fri Nov 21 14:57:46 1997 @@ -1,112 +1,149 @@ MD5 (blas/caxpy.f.Z) = 7aa3450c8dae3c5f2f9b0c4bf354ae6f -MD5 (blas/cblas1.f.Z) = e64c377f4df8812231058d0649dd4a1d -MD5 (blas/cblas2.f.Z) = d1b784d5353289c3dc5b565d94230359 MD5 (blas/ccopy.f.Z) = 429eadcffc1501bc81f607799ac6a166 MD5 (blas/cdotc.f.Z) = 8fbfe7a0e93a5ea78bc8099971179d4b MD5 (blas/cdotu.f.Z) = c09815ce64a93d00ed0dbeca04659a80 MD5 (blas/cgbmv.f.Z) = ede85943b43123430aea6b554dadc83e +MD5 (blas/cgemm.f.Z) = bb0711151f8d881ec9304971a431c871 MD5 (blas/cgemv.f.Z) = 09f467e76ecdaae8a71856d0c3b5b5fa MD5 (blas/cgerc.f.Z) = fefdfa59cda132c8ee8df869c375b0e6 MD5 (blas/cgeru.f.Z) = fa661eec92f5d3cfcc892a8c8dd41ac4 MD5 (blas/chbmv.f.Z) = 1c522117000793240f509320872d943e +MD5 (blas/chemm.f.Z) = 739ca3d773ff7af1519aa25e46686523 MD5 (blas/chemv.f.Z) = d02bef19ae2246c312fb7cb178e771a9 MD5 (blas/cher.f.Z) = afc0713a590885ddcdc19daf7cfc4616 MD5 (blas/cher2.f.Z) = 5137426750d14626308075519c1a7754 +MD5 (blas/cher2k.f.Z) = 0271cf283cb97176c824744d3fa39970 +MD5 (blas/cherk.f.Z) = 2905d613bd982eb6676abd5ea1aa2acc MD5 (blas/chpmv.f.Z) = 8f5f99301ec61a06fcd1e9a1eca5a25b MD5 (blas/chpr.f.Z) = 1fd6f563588fa2ae0723ab09928cf6c2 MD5 (blas/chpr2.f.Z) = ba50d10fbb3bd0b89f778c3a4f1b1b4a -MD5 (blas/cmach.f.Z) = f3facbb75c14bd649be93baf336681aa MD5 (blas/crotg.f.Z) = e8c9fe0205bd6492593bc43d7a0f42cd MD5 (blas/cscal.f.Z) = 25bada05d29b659c95dfb355a69c1183 MD5 (blas/csrot.f.Z) = 607a7362b5fd59bea8ec5c1a3c2d7e34 MD5 (blas/csscal.f.Z) = ce79ef4d8f209b5548cb639789f6d2e7 MD5 (blas/cswap.f.Z) = deefab269d1f4fdeb49487129cc4f24d +MD5 (blas/csymm.f.Z) = c2bf24c7f69c8dbd9fa510593943caa7 +MD5 (blas/csyr2k.f.Z) = f8ee7a78f21f62f15fa3225a49d2da84 +MD5 (blas/csyrk.f.Z) = ad8e71798c6f75ca8b5e948edf049416 MD5 (blas/ctbmv.f.Z) = 0a42b30a30c0ed3a83370e3eded52934 MD5 (blas/ctbsv.f.Z) = a6aae08dddb0ec104be22ff3d606050d MD5 (blas/ctpmv.f.Z) = a5eb8500133078cfe882424b00374573 MD5 (blas/ctpsv.f.Z) = 29c22ef91d32aa07a0bf63258bcc7d28 +MD5 (blas/ctrmm.f.Z) = e2078c53ac52285fed212c43d4963704 MD5 (blas/ctrmv.f.Z) = b6dcf0ef55708a5c6c280a2b8e6f594f +MD5 (blas/ctrsm.f.Z) = 3263941cb0e3941eba2f1d2dd2258b6c MD5 (blas/ctrsv.f.Z) = ef0642dbc5a132480e9a0bf0daa19bd2 -MD5 (blas/d1mach.f.Z) = 1097bee92a77d22e8d110506d5b473f8 MD5 (blas/dasum.f.Z) = a19538326b7a44c278d13a16df6053ba MD5 (blas/daxpy.f.Z) = d4e3642b7f4d5ea1a8820538abc5c937 -MD5 (blas/dblas1.f.Z) = adfe164a49988320a23a32ee84014b0a -MD5 (blas/dblas2.f.Z) = a174d213b2d46453fb5773b64a657b90 +MD5 (blas/dcabs1.f.Z) = aa5aff85708f7b85b2232c5e9abd2ce9 MD5 (blas/dcopy.f.Z) = 8708981ce6a9478d73daaeb2798ad146 MD5 (blas/ddot.f.Z) = 3786e6ee20de46ac64e5ca7127754f2b MD5 (blas/dgbmv.f.Z) = f836481c96a0dc843b2219c2cd25d6d7 +MD5 (blas/dgemm.f.Z) = 0fcd0005a164895cb26cc5763d8bd579 MD5 (blas/dgemv.f.Z) = a7f8a827adfbc3e3915edd15d3390e9d MD5 (blas/dger.f.Z) = 05a0ddc98da14ebf4506cf597d1781a5 -MD5 (blas/dmach.f.Z) = ff45f7858b72270e82aff80dc4c9c39d MD5 (blas/dnrm2.f.Z) = 9dc1a977681431c1465a076a9f0babeb MD5 (blas/drot.f.Z) = 0008d3e9c7e59a8e1b30832fa6caa8a8 MD5 (blas/drotg.f.Z) = f3fe3c76270a70954675d17b9bf8fd29 +MD5 (blas/drotm.f.Z) = 05981e83491e2c53d5fb4747dc433846 +MD5 (blas/drotmg.f.Z) = 8e4398353981444bc0decb31696702c1 MD5 (blas/dsbmv.f.Z) = 4e81d2668b2d4dcc1d27ceda59064af1 MD5 (blas/dscal.f.Z) = 85acbc711750f37c6dce1fd79222ecbe +MD5 (blas/dsdot.f.Z) = bf40831e5a184a453547bba80d9ad989 MD5 (blas/dspmv.f.Z) = e83f35bfda318ca2d7f5e59316486365 MD5 (blas/dspr.f.Z) = 3675a35dfcd359bf2b2546e34baa5dd0 MD5 (blas/dspr2.f.Z) = b5f06e13f9de8698f9383b3f4e41e6d3 MD5 (blas/dswap.f.Z) = 9e36d9070cc6c3ba45b06b987e9694a0 +MD5 (blas/dsymm.f.Z) = 49b87a6b8054f2562a802623e96044e9 MD5 (blas/dsymv.f.Z) = 6b98ff6b13f143c682ac6589c2097a00 MD5 (blas/dsyr.f.Z) = bc75473a16b27f80fc46db75e27952a0 MD5 (blas/dsyr2.f.Z) = b7a71c1d99d175eed391cd779bf2232c +MD5 (blas/dsyr2k.f.Z) = e330d4aa2f06d9159679ba3929fa1a18 +MD5 (blas/dsyrk.f.Z) = dcd723d4e7a0302ad83bd136c1dc1f9b MD5 (blas/dtbmv.f.Z) = 26b7f556193650cf4d99ce9caab95f49 MD5 (blas/dtbsv.f.Z) = 7c707c170148b13b61b16a1a1fc04fff MD5 (blas/dtpmv.f.Z) = 3ac0d4a181f71e28130b75cea8947a57 MD5 (blas/dtpsv.f.Z) = c58d654b53fe93fec5f8f03f2f730d21 +MD5 (blas/dtrmm.f.Z) = 5f64fd49543e08aa975bc562042697c7 MD5 (blas/dtrmv.f.Z) = 25464e5e4cc8eddf8ae26f3f6d26cfbf +MD5 (blas/dtrsm.f.Z) = 02a7ca5e4a9486d76cf26e6e2f03ac6a MD5 (blas/dtrsv.f.Z) = d761d518314409de8181f1c18a1c0ca6 -MD5 (blas/esblas2.f.Z) = 556d28aaa1bac039e83a718c110f2be8 -MD5 (blas/esgbmv.f.Z) = ae560b5f4bcb23184e8ac0e6aa01cd41 -MD5 (blas/esgemv.f.Z) = f7241f1de3f2d55b373d017a25e96f61 -MD5 (blas/esger.f.Z) = 2211315a6947bee6928f5f99b87d6f3c -MD5 (blas/essbmv.f.Z) = e4563c0b6304efa0fd6a3c7eec895b5a -MD5 (blas/esspmv.f.Z) = ae61d30db8fe2ad9a0b8e9a71be7b87b -MD5 (blas/esspr.f.Z) = 71dba40ee65831aabf2daf993d459b2d -MD5 (blas/esspr2.f.Z) = 858f12f45e3ef03a7558d07ac43af6ed -MD5 (blas/essymv.f.Z) = abf28d3a867a77ac4bdc770fa428956c -MD5 (blas/essyr.f.Z) = a55b7d0ae9d4f12ea40f9774bc796977 -MD5 (blas/essyr2.f.Z) = 5ca0a1983014509976603880dacc5cca -MD5 (blas/estbmv.f.Z) = 38dbc1990d6f6dec70d0c1b6f47d79e0 -MD5 (blas/estbsv.f.Z) = d4012a56f9923b776ad7e057143e6fe3 -MD5 (blas/estpmv.f.Z) = 0deac64a3cbc42862d922b72274816f4 -MD5 (blas/estpsv.f.Z) = b6c8762bf5ce000531cc9f6d23e76014 -MD5 (blas/estrmv.f.Z) = 194f5a0d29afc83d96736bb89b27110d -MD5 (blas/estrsv.f.Z) = aea7bcacf9f46cae241d2a2e8c880d7b -MD5 (blas/i1mach.f.Z) = 7b839b5959f06d8878ee17c9776746c6 +MD5 (blas/dzasum.f.Z) = c35033a9a09b6962e75519dfd805a208 +MD5 (blas/dznrm2.f.Z) = b349117462369fc77596c441e8b97b53 MD5 (blas/icamax.f.Z) = 64a7c708d9ef4796dbace4f9f693e26e MD5 (blas/idamax.f.Z) = 92dbc818d2fa43ba562363584a232640 MD5 (blas/isamax.f.Z) = 8a072f55991a398491a50cda0d59e310 +MD5 (blas/izamax.f.Z) = 3e0252a0353276eff4779a8d54d55e52 MD5 (blas/lsame.f.Z) = aa0fa68afa3aebed48ae8018b5958225 -MD5 (blas/r1mach.f.Z) = 377d575f5f848d5b663b5a305951e0ac MD5 (blas/sasum.f.Z) = 11f5b13b30207d447ce020bdd02fa4f7 MD5 (blas/saxpy.f.Z) = fe9bab170374c80c132b9bbaadfb6685 -MD5 (blas/sblas1.f.Z) = 8592a90f7b2da8d7e5f2494f478011b6 -MD5 (blas/sblas2.f.Z) = 4d91f4caedbb2579b7d3424b249e6b36 MD5 (blas/scasum.f.Z) = e92942772d17fa14c2d726b3c751c1eb MD5 (blas/scnrm2.f.Z) = f017ad5fa78a520289e79c0a94bd2d4e MD5 (blas/scopy.f.Z) = 75c3deab76c4cde2b3d1eb4a2d42a43c MD5 (blas/sdot.f.Z) = df899a51b0c2a2c089d6dac83e4d0687 +MD5 (blas/sdsdot.f.Z) = 9e5a1e7306a270368afd6f7b798a7289 MD5 (blas/sgbmv.f.Z) = 1ee853a6df3847034253811b27bb5915 +MD5 (blas/sgemm.f.Z) = 88ae609db5741df1d84deb0add88cba1 MD5 (blas/sgemv.f.Z) = bc4cb01373d8f1887aeee82cd862705c MD5 (blas/sger.f.Z) = f0e21f09aed400d05fca4abbd638980e -MD5 (blas/smach.f.Z) = 7dd636c28409d898e67d0b5769b472d1 MD5 (blas/snrm2.f.Z) = c3f647ed548b14aff7048edc78fdbdcf MD5 (blas/srot.f.Z) = 9266cb991aa0e330619d70f73257fe6c MD5 (blas/srotg.f.Z) = 58847547ada571890d6c51631286e0c2 +MD5 (blas/srotm.f.Z) = ae7eb61b02b4fe5564a42dd934236fb6 +MD5 (blas/srotmg.f.Z) = 01ea02eb02972ac7e201ade265e02c93 MD5 (blas/ssbmv.f.Z) = 7910705e7fdcba7442288fc9cbc67263 MD5 (blas/sscal.f.Z) = 77337b8bf105472e46f653c1691a19a7 MD5 (blas/sspmv.f.Z) = d1ed4170835ff44230f5d98de9faa0c2 MD5 (blas/sspr.f.Z) = 11b23250b08e9d14faf409c6d91f6764 MD5 (blas/sspr2.f.Z) = 058fae4aadf37bb12010a37aca1a0a2a MD5 (blas/sswap.f.Z) = 8ad280aa65aed9dd8e6c39d9cd12220e +MD5 (blas/ssymm.f.Z) = 6b236e1db88be2769399f8cd4d740d1f MD5 (blas/ssymv.f.Z) = 115192842a9ef45705ddc871ec471477 MD5 (blas/ssyr.f.Z) = a9eaaa5f698fa6c0b12f810cf448f59b MD5 (blas/ssyr2.f.Z) = 1ba1431688187f3784f64179b5e181af +MD5 (blas/ssyr2k.f.Z) = 69fded6e8887372273283bb723df9863 +MD5 (blas/ssyrk.f.Z) = 46c1332f3df856863e46bb3ecdbc19c9 MD5 (blas/stbmv.f.Z) = 78f8845b5798b1b80340dd250495600c MD5 (blas/stbsv.f.Z) = 08ca4d81081402c541b6410c54ef676a MD5 (blas/stpmv.f.Z) = 0769151b2b7f737ad4a5c9d0525694f5 MD5 (blas/stpsv.f.Z) = 95b5ac8fc17e6c2946253382ef7822fe +MD5 (blas/strmm.f.Z) = 5e687058d9763ef0e13ebfbf9f6b873b MD5 (blas/strmv.f.Z) = e4d2b771fd3311ebf0ca3be092f20dff +MD5 (blas/strsm.f.Z) = 9bec748da533d5afcd7808dfa4261d6c MD5 (blas/strsv.f.Z) = cde2f3ee65110063312924fa201bdf50 MD5 (blas/xerbla.f.Z) = 3019566bc94201a054fef3991f21a4ac +MD5 (blas/zaxpy.f.Z) = bd49bec5cdb697404068c1bd8d5e1320 +MD5 (blas/zcopy.f.Z) = 99f516b2a7173ce5adb1bfae13ec7ca6 +MD5 (blas/zdotc.f.Z) = 333d058ad5fda08bba6b3634d3a60584 +MD5 (blas/zdotu.f.Z) = 20c9eb00dc649a92792b97f0010b30da +MD5 (blas/zdrot.f.Z) = c64b6260b0bcd67d623fd47f1f7c23b3 +MD5 (blas/zdscal.f.Z) = f90d1df6a6f936f01fd5863b4ddee886 +MD5 (blas/zgbmv.f.Z) = d14d372f2c082baf9410ee6a66c488db +MD5 (blas/zgemm.f.Z) = b7cd6023e5e014fea4dafb8f38420055 +MD5 (blas/zgemv.f.Z) = d6a43ce0dbb16ffab2a1389cf3f01e7d +MD5 (blas/zgerc.f.Z) = fe304c1537465f644cdf3ddae8134390 +MD5 (blas/zgeru.f.Z) = fc682e117d684290181dba6e4e0c6f49 +MD5 (blas/zhbmv.f.Z) = 283b4e3905c66a8ce31f24c581ad6b9b +MD5 (blas/zhemm.f.Z) = 0be0eef0765f45a75b8fe81d7b5d53d2 +MD5 (blas/zhemv.f.Z) = 8551405594bfe28897ccfeff295e45b4 +MD5 (blas/zher.f.Z) = 90409798d6b0b411be426d978950880b +MD5 (blas/zher2.f.Z) = ce6394e2995b5fc4f4b5f9514a7b1372 +MD5 (blas/zher2k.f.Z) = c4793dd4ffe9ca74374bfae5dc72867e +MD5 (blas/zherk.f.Z) = a7babaabe33f941767e9369473d91666 +MD5 (blas/zhpmv.f.Z) = f41448226fe86f7c9e8a86085fc05f77 +MD5 (blas/zhpr.f.Z) = 722de8c7b83a9c6b29239c51ff3baaae +MD5 (blas/zhpr2.f.Z) = 576fe25d5c776c3696162b5ed6bf51ac +MD5 (blas/zrotg.f.Z) = d7b109875de0541adcf6b096861c3d88 +MD5 (blas/zscal.f.Z) = d0c1b06e2098195982126a8cac804566 +MD5 (blas/zswap.f.Z) = b29d93507b220e808abb8fd4529db845 +MD5 (blas/zsymm.f.Z) = 9e2c639a342d0d67aa1ccd16384c3f54 +MD5 (blas/zsyr2k.f.Z) = 8ca79a9f1583136adc25079aefa1e02b +MD5 (blas/zsyrk.f.Z) = 1484f9b7aa4c7c8be9eb725953fab883 +MD5 (blas/ztbmv.f.Z) = ed9aa53e4c7b41e907fdbf36cfa03b12 +MD5 (blas/ztbsv.f.Z) = 7e030ca380ffe87a4f968019c2dbfc98 +MD5 (blas/ztpmv.f.Z) = 08175a10bc553471ce3a4322deec1f95 +MD5 (blas/ztpsv.f.Z) = 3ee699c93a455740c5fe5552075187e6 +MD5 (blas/ztrmm.f.Z) = 9633c6da74545de7e0e80bc663efab49 +MD5 (blas/ztrmv.f.Z) = f5dca24b811f8071e6972fa461bbee62 +MD5 (blas/ztrsm.f.Z) = e5cba1b4174cbf930772d4199fc8b132 +MD5 (blas/ztrsv.f.Z) = 7542ff2bc2a90061582b37b41647eda5 diff -rNu /cdrom/ports/math/blas/patches/00_TRANS.TBL blas/patches/00_TRANS.TBL --- /cdrom/ports/math/blas/patches/00_TRANS.TBL Tue Oct 21 16:26:47 1997 +++ blas/patches/00_TRANS.TBL Wed Dec 31 19:00:00 1969 @@ -1,2 +0,0 @@ -D CVS CVS -F PATCH_AA patch-aa diff -rNu /cdrom/ports/math/blas/patches/CVS/00_TRANS.TBL blas/patches/CVS/00_TRANS.TBL --- /cdrom/ports/math/blas/patches/CVS/00_TRANS.TBL Tue Oct 21 16:26:47 1997 +++ blas/patches/CVS/00_TRANS.TBL Wed Dec 31 19:00:00 1969 @@ -1,3 +0,0 @@ -F ENTRIES Entries -F REPOSITO Repository -F ROOT Root diff -rNu /cdrom/ports/math/blas/patches/CVS/Entries blas/patches/CVS/Entries --- /cdrom/ports/math/blas/patches/CVS/Entries Tue Oct 21 07:07:48 1997 +++ blas/patches/CVS/Entries Wed Dec 31 19:00:00 1969 @@ -1,2 +0,0 @@ -/patch-aa/1.1/Thu Apr 3 01:12:05 1997// -D diff -rNu /cdrom/ports/math/blas/patches/CVS/Repository blas/patches/CVS/Repository --- /cdrom/ports/math/blas/patches/CVS/Repository Tue Oct 21 07:07:48 1997 +++ blas/patches/CVS/Repository Wed Dec 31 19:00:00 1969 @@ -1 +0,0 @@ -/home/ncvs/ports/math/blas/patches diff -rNu /cdrom/ports/math/blas/patches/CVS/Root blas/patches/CVS/Root --- /cdrom/ports/math/blas/patches/CVS/Root Tue Oct 21 07:07:48 1997 +++ blas/patches/CVS/Root Wed Dec 31 19:00:00 1969 @@ -1 +0,0 @@ -/home/ncvs diff -rNu /cdrom/ports/math/blas/patches/patch-aa blas/patches/patch-aa --- /cdrom/ports/math/blas/patches/patch-aa Wed Apr 2 20:12:05 1997 +++ blas/patches/patch-aa Wed Dec 31 19:00:00 1969 @@ -1,1420 +0,0 @@ -# -# THIS IS A CROCK -# -# FreeBSD's f77 can't handle the updated [dir]1mach.f from netlib. -# Since nobody has time to figure out what's wrong with f77, we simply -# include patches to "downgrade" these files to the previous revision, -# which work. -# ---- d1mach.f.orig Wed Apr 2 20:32:23 1997 -+++ d1mach.f Wed Apr 2 21:05:03 1997 -@@ -1,55 +1,324 @@ - DOUBLE PRECISION FUNCTION D1MACH(I) -- INTEGER I - C - C DOUBLE-PRECISION MACHINE CONSTANTS -+C - C D1MACH( 1) = B**(EMIN-1), THE SMALLEST POSITIVE MAGNITUDE. -+C - C D1MACH( 2) = B**EMAX*(1 - B**(-T)), THE LARGEST MAGNITUDE. -+C - C D1MACH( 3) = B**(-T), THE SMALLEST RELATIVE SPACING. -+C - C D1MACH( 4) = B**(1-T), THE LARGEST RELATIVE SPACING. -+C - C D1MACH( 5) = LOG10(B) - C --C THIS VERSION ADAPTS AUTOMATICALLY TO MOST CURRENT MACHINES. --C R1MACH CAN HANDLE AUTO-DOUBLE COMPILING, BUT THIS VERSION OF --C D1MACH DOES NOT, BECAUSE WE DO NOT HAVE QUAD CONSTANTS FOR --C MANY MACHINES YET. --C TO ALTER FOR A PARTICULAR ENVIRONMENT, THE DESIRED SET OF DATA --C STATEMENTS MAY BE ACTIVATED BY REMOVING THE C FROM COLUMN 1. --C CONSTANTS FOR OLDER MACHINES CAN BE OBTAINED BY --C mail netlib@research.bell-labs.com --C send old1mach from blas --C PLEASE SEND CORRECTIONS TO dmg OR ehg@bell-labs.com. -+C TO ALTER THIS FUNCTION FOR A PARTICULAR ENVIRONMENT, -+C THE DESIRED SET OF DATA STATEMENTS SHOULD BE ACTIVATED BY -+C REMOVING THE C FROM COLUMN 1. -+C ON RARE MACHINES A STATIC STATEMENT MAY NEED TO BE ADDED. -+C (BUT PROBABLY MORE SYSTEMS PROHIBIT IT THAN REQUIRE IT.) -+C -+C FOR IEEE-ARITHMETIC MACHINES (BINARY STANDARD), ONE OF THE FIRST -+C TWO SETS OF CONSTANTS BELOW SHOULD BE APPROPRIATE. IF YOU DO NOT -+C KNOW WHICH SET TO USE, TRY BOTH AND SEE WHICH GIVES PLAUSIBLE -+C VALUES. -+C -+C WHERE POSSIBLE, DECIMAL, OCTAL OR HEXADECIMAL CONSTANTS ARE USED -+C TO SPECIFY THE CONSTANTS EXACTLY. SOMETIMES THIS REQUIRES USING -+C EQUIVALENT INTEGER ARRAYS. IF YOUR COMPILER USES HALF-WORD -+C INTEGERS BY DEFAULT (SOMETIMES CALLED INTEGER*2), YOU MAY NEED TO -+C CHANGE INTEGER TO INTEGER*4 OR OTHERWISE INSTRUCT YOUR COMPILER -+C TO USE FULL-WORD INTEGERS IN THE NEXT 5 DECLARATIONS. -+C -+C COMMENTS JUST BEFORE THE END STATEMENT (LINES STARTING WITH *) -+C GIVE C SOURCE FOR D1MACH. - C - INTEGER SMALL(2) - INTEGER LARGE(2) - INTEGER RIGHT(2) - INTEGER DIVER(2) - INTEGER LOG10(2) -- INTEGER SC, CRAY1(38), J -- COMMON /D9MACH/ CRAY1 -+ INTEGER SC -+C/6S -+C/7S - SAVE SMALL, LARGE, RIGHT, DIVER, LOG10, SC -+C/ - DOUBLE PRECISION DMACH(5) -+C - EQUIVALENCE (DMACH(1),SMALL(1)) - EQUIVALENCE (DMACH(2),LARGE(1)) - EQUIVALENCE (DMACH(3),RIGHT(1)) - EQUIVALENCE (DMACH(4),DIVER(1)) - EQUIVALENCE (DMACH(5),LOG10(1)) - C -+C MACHINE CONSTANTS FOR BIG-ENDIAN IEEE ARITHMETIC (BINARY FORMAT) -+C MACHINES IN WHICH THE MOST SIGNIFICANT BYTE IS STORED FIRST, -+C SUCH AS THE AT&T 3B SERIES, MOTOROLA 68000 BASED MACHINES (E.G. -+C SUN 3), AND MACHINES THAT USE SPARC, HP, OR IBM RISC CHIPS. -+C -+C DATA SMALL(1),SMALL(2) / 1048576, 0 / -+C DATA LARGE(1),LARGE(2) / 2146435071, -1 / -+C DATA RIGHT(1),RIGHT(2) / 1017118720, 0 / -+C DATA DIVER(1),DIVER(2) / 1018167296, 0 / -+C DATA LOG10(1),LOG10(2) / 1070810131, 1352628735 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR LITTLE-ENDIAN (BINARY) IEEE ARITHMETIC -+C MACHINES IN WHICH THE LEAST SIGNIFICANT BYTE IS STORED FIRST, -+C E.G. IBM PCS AND OTHER MACHINES THAT USE INTEL 80X87 OR DEC -+C ALPHA CHIPS. -+C -+C DATA SMALL(1),SMALL(2) / 0, 1048576 / -+C DATA LARGE(1),LARGE(2) / -1, 2146435071 / -+C DATA RIGHT(1),RIGHT(2) / 0, 1017118720 / -+C DATA DIVER(1),DIVER(2) / 0, 1018167296 / -+C DATA LOG10(1),LOG10(2) / 1352628735, 1070810131 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR AMDAHL MACHINES. -+C -+C DATA SMALL(1),SMALL(2) / 1048576, 0 / -+C DATA LARGE(1),LARGE(2) / 2147483647, -1 / -+C DATA RIGHT(1),RIGHT(2) / 856686592, 0 / -+C DATA DIVER(1),DIVER(2) / 873463808, 0 / -+C DATA LOG10(1),LOG10(2) / 1091781651, 1352628735 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE BURROUGHS 1700 SYSTEM. -+C -+C DATA SMALL(1) / ZC00800000 / -+C DATA SMALL(2) / Z000000000 / -+C -+C DATA LARGE(1) / ZDFFFFFFFF / -+C DATA LARGE(2) / ZFFFFFFFFF / -+C -+C DATA RIGHT(1) / ZCC5800000 / -+C DATA RIGHT(2) / Z000000000 / -+C -+C DATA DIVER(1) / ZCC6800000 / -+C DATA DIVER(2) / Z000000000 / -+C -+C DATA LOG10(1) / ZD00E730E7 / -+C DATA LOG10(2) / ZC77800DC0 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE BURROUGHS 5700 SYSTEM. -+C -+C DATA SMALL(1) / O1771000000000000 / -+C DATA SMALL(2) / O0000000000000000 / -+C -+C DATA LARGE(1) / O0777777777777777 / -+C DATA LARGE(2) / O0007777777777777 / -+C -+C DATA RIGHT(1) / O1461000000000000 / -+C DATA RIGHT(2) / O0000000000000000 / -+C -+C DATA DIVER(1) / O1451000000000000 / -+C DATA DIVER(2) / O0000000000000000 / -+C -+C DATA LOG10(1) / O1157163034761674 / -+C DATA LOG10(2) / O0006677466732724 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE BURROUGHS 6700/7700 SYSTEMS. -+C -+C DATA SMALL(1) / O1771000000000000 / -+C DATA SMALL(2) / O7770000000000000 / -+C -+C DATA LARGE(1) / O0777777777777777 / -+C DATA LARGE(2) / O7777777777777777 / -+C -+C DATA RIGHT(1) / O1461000000000000 / -+C DATA RIGHT(2) / O0000000000000000 / -+C -+C DATA DIVER(1) / O1451000000000000 / -+C DATA DIVER(2) / O0000000000000000 / -+C -+C DATA LOG10(1) / O1157163034761674 / -+C DATA LOG10(2) / O0006677466732724 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR FTN4 ON THE CDC 6000/7000 SERIES. -+C -+C DATA SMALL(1) / 00564000000000000000B / -+C DATA SMALL(2) / 00000000000000000000B / -+C -+C DATA LARGE(1) / 37757777777777777777B / -+C DATA LARGE(2) / 37157777777777777774B / -+C -+C DATA RIGHT(1) / 15624000000000000000B / -+C DATA RIGHT(2) / 00000000000000000000B / -+C -+C DATA DIVER(1) / 15634000000000000000B / -+C DATA DIVER(2) / 00000000000000000000B / -+C -+C DATA LOG10(1) / 17164642023241175717B / -+C DATA LOG10(2) / 16367571421742254654B /, SC/987/ -+C -+C MACHINE CONSTANTS FOR FTN5 ON THE CDC 6000/7000 SERIES. -+C -+C DATA SMALL(1) / O"00564000000000000000" / -+C DATA SMALL(2) / O"00000000000000000000" / -+C -+C DATA LARGE(1) / O"37757777777777777777" / -+C DATA LARGE(2) / O"37157777777777777774" / -+C -+C DATA RIGHT(1) / O"15624000000000000000" / -+C DATA RIGHT(2) / O"00000000000000000000" / -+C -+C DATA DIVER(1) / O"15634000000000000000" / -+C DATA DIVER(2) / O"00000000000000000000" / -+C -+C DATA LOG10(1) / O"17164642023241175717" / -+C DATA LOG10(2) / O"16367571421742254654" /, SC/987/ -+C -+C MACHINE CONSTANTS FOR CONVEX C-1 -+C -+C DATA SMALL(1),SMALL(2) / '00100000'X, '00000000'X / -+C DATA LARGE(1),LARGE(2) / '7FFFFFFF'X, 'FFFFFFFF'X / -+C DATA RIGHT(1),RIGHT(2) / '3CC00000'X, '00000000'X / -+C DATA DIVER(1),DIVER(2) / '3CD00000'X, '00000000'X / -+C DATA LOG10(1),LOG10(2) / '3FF34413'X, '509F79FF'X /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE CRAY 1, XMP, 2, AND 3. -+C -+C DATA SMALL(1) / 201354000000000000000B / -+C DATA SMALL(2) / 000000000000000000000B / -+C -+C DATA LARGE(1) / 577767777777777777777B / -+C DATA LARGE(2) / 000007777777777777776B / -+C -+C DATA RIGHT(1) / 376434000000000000000B / -+C DATA RIGHT(2) / 000000000000000000000B / -+C -+C DATA DIVER(1) / 376444000000000000000B / -+C DATA DIVER(2) / 000000000000000000000B / -+C -+C DATA LOG10(1) / 377774642023241175717B / -+C DATA LOG10(2) / 000007571421742254654B /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE DATA GENERAL ECLIPSE S/200 -+C -+C SMALL, LARGE, RIGHT, DIVER, LOG10 SHOULD BE DECLARED -+C INTEGER SMALL(4), LARGE(4), RIGHT(4), DIVER(4), LOG10(4) -+C -+C NOTE - IT MAY BE APPROPRIATE TO INCLUDE THE FOLLOWING LINE - -+C STATIC DMACH(5) -+C -+C DATA SMALL/20K,3*0/,LARGE/77777K,3*177777K/ -+C DATA RIGHT/31420K,3*0/,DIVER/32020K,3*0/ -+C DATA LOG10/40423K,42023K,50237K,74776K/, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE HARRIS SLASH 6 AND SLASH 7 -+C -+C DATA SMALL(1),SMALL(2) / '20000000, '00000201 / -+C DATA LARGE(1),LARGE(2) / '37777777, '37777577 / -+C DATA RIGHT(1),RIGHT(2) / '20000000, '00000333 / -+C DATA DIVER(1),DIVER(2) / '20000000, '00000334 / -+C DATA LOG10(1),LOG10(2) / '23210115, '10237777 /, SC/987/ -+C - C MACHINE CONSTANTS FOR THE HONEYWELL DPS 8/70 SERIES. -+C - C DATA SMALL(1),SMALL(2) / O402400000000, O000000000000 / - C DATA LARGE(1),LARGE(2) / O376777777777, O777777777777 / - C DATA RIGHT(1),RIGHT(2) / O604400000000, O000000000000 / - C DATA DIVER(1),DIVER(2) / O606400000000, O000000000000 / - C DATA LOG10(1),LOG10(2) / O776464202324, O117571775714 /, SC/987/ - C -+C MACHINE CONSTANTS FOR THE IBM 360/370 SERIES, -+C THE XEROX SIGMA 5/7/9 AND THE SEL SYSTEMS 85/86. -+C -+C DATA SMALL(1),SMALL(2) / Z00100000, Z00000000 / -+C DATA LARGE(1),LARGE(2) / Z7FFFFFFF, ZFFFFFFFF / -+C DATA RIGHT(1),RIGHT(2) / Z33100000, Z00000000 / -+C DATA DIVER(1),DIVER(2) / Z34100000, Z00000000 / -+C DATA LOG10(1),LOG10(2) / Z41134413, Z509F79FF /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE INTERDATA 8/32 -+C WITH THE UNIX SYSTEM FORTRAN 77 COMPILER. -+C -+C FOR THE INTERDATA FORTRAN VII COMPILER REPLACE -+C THE Z'S SPECIFYING HEX CONSTANTS WITH Y'S. -+C -+C DATA SMALL(1),SMALL(2) / Z'00100000', Z'00000000' / -+C DATA LARGE(1),LARGE(2) / Z'7EFFFFFF', Z'FFFFFFFF' / -+C DATA RIGHT(1),RIGHT(2) / Z'33100000', Z'00000000' / -+C DATA DIVER(1),DIVER(2) / Z'34100000', Z'00000000' / -+C DATA LOG10(1),LOG10(2) / Z'41134413', Z'509F79FF' /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE PDP-10 (KA PROCESSOR). -+C -+C DATA SMALL(1),SMALL(2) / "033400000000, "000000000000 / -+C DATA LARGE(1),LARGE(2) / "377777777777, "344777777777 / -+C DATA RIGHT(1),RIGHT(2) / "113400000000, "000000000000 / -+C DATA DIVER(1),DIVER(2) / "114400000000, "000000000000 / -+C DATA LOG10(1),LOG10(2) / "177464202324, "144117571776 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE PDP-10 (KI PROCESSOR). -+C -+C DATA SMALL(1),SMALL(2) / "000400000000, "000000000000 / -+C DATA LARGE(1),LARGE(2) / "377777777777, "377777777777 / -+C DATA RIGHT(1),RIGHT(2) / "103400000000, "000000000000 / -+C DATA DIVER(1),DIVER(2) / "104400000000, "000000000000 / -+C DATA LOG10(1),LOG10(2) / "177464202324, "047674776746 /, SC/987/ -+C - C MACHINE CONSTANTS FOR PDP-11 FORTRANS SUPPORTING --C 32-BIT INTEGERS. -+C 32-BIT INTEGERS (EXPRESSED IN INTEGER AND OCTAL). -+C - C DATA SMALL(1),SMALL(2) / 8388608, 0 / - C DATA LARGE(1),LARGE(2) / 2147483647, -1 / - C DATA RIGHT(1),RIGHT(2) / 612368384, 0 / - C DATA DIVER(1),DIVER(2) / 620756992, 0 / - C DATA LOG10(1),LOG10(2) / 1067065498, -2063872008 /, SC/987/ - C -+C DATA SMALL(1),SMALL(2) / O00040000000, O00000000000 / -+C DATA LARGE(1),LARGE(2) / O17777777777, O37777777777 / -+C DATA RIGHT(1),RIGHT(2) / O04440000000, O00000000000 / -+C DATA DIVER(1),DIVER(2) / O04500000000, O00000000000 / -+C DATA LOG10(1),LOG10(2) / O07746420232, O20476747770 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR PDP-11 FORTRANS SUPPORTING -+C 16-BIT INTEGERS (EXPRESSED IN INTEGER AND OCTAL). -+C -+C SMALL, LARGE, RIGHT, DIVER, LOG10 SHOULD BE DECLARED -+C INTEGER SMALL(4), LARGE(4), RIGHT(4), DIVER(4), LOG10(4) -+C -+C DATA SMALL(1),SMALL(2) / 128, 0 / -+C DATA SMALL(3),SMALL(4) / 0, 0 / -+C -+C DATA LARGE(1),LARGE(2) / 32767, -1 / -+C DATA LARGE(3),LARGE(4) / -1, -1 / -+C -+C DATA RIGHT(1),RIGHT(2) / 9344, 0 / -+C DATA RIGHT(3),RIGHT(4) / 0, 0 / -+C -+C DATA DIVER(1),DIVER(2) / 9472, 0 / -+C DATA DIVER(3),DIVER(4) / 0, 0 / -+C -+C DATA LOG10(1),LOG10(2) / 16282, 8346 / -+C DATA LOG10(3),LOG10(4) / -31493, -12296 /, SC/987/ -+C -+C DATA SMALL(1),SMALL(2) / O000200, O000000 / -+C DATA SMALL(3),SMALL(4) / O000000, O000000 / -+C -+C DATA LARGE(1),LARGE(2) / O077777, O177777 / -+C DATA LARGE(3),LARGE(4) / O177777, O177777 / -+C -+C DATA RIGHT(1),RIGHT(2) / O022200, O000000 / -+C DATA RIGHT(3),RIGHT(4) / O000000, O000000 / -+C -+C DATA DIVER(1),DIVER(2) / O022400, O000000 / -+C DATA DIVER(3),DIVER(4) / O000000, O000000 / -+C -+C DATA LOG10(1),LOG10(2) / O037632, O020232 / -+C DATA LOG10(3),LOG10(4) / O102373, O147770 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE PRIME 50 SERIES SYSTEMS -+C WITH 32-BIT INTEGERS AND 64V MODE INSTRUCTIONS, -+C SUPPLIED BY IGOR BRAY. -+C -+C DATA SMALL(1),SMALL(2) / :10000000000, :00000100001 / -+C DATA LARGE(1),LARGE(2) / :17777777777, :37777677775 / -+C DATA RIGHT(1),RIGHT(2) / :10000000000, :00000000122 / -+C DATA DIVER(1),DIVER(2) / :10000000000, :00000000123 / -+C DATA LOG10(1),LOG10(2) / :11504046501, :07674600177 /, SC/987/ -+C - C MACHINE CONSTANTS FOR THE SEQUENT BALANCE 8000 -+C - C DATA SMALL(1),SMALL(2) / $00000000, $00100000 / - C DATA LARGE(1),LARGE(2) / $FFFFFFFF, $7FEFFFFF / - C DATA RIGHT(1),RIGHT(2) / $00000000, $3CA00000 / -@@ -57,13 +326,39 @@ - C DATA LOG10(1),LOG10(2) / $509F79FF, $3FD34413 /, SC/987/ - C - C MACHINE CONSTANTS FOR THE UNIVAC 1100 SERIES. -+C - C DATA SMALL(1),SMALL(2) / O000040000000, O000000000000 / - C DATA LARGE(1),LARGE(2) / O377777777777, O777777777777 / - C DATA RIGHT(1),RIGHT(2) / O170540000000, O000000000000 / - C DATA DIVER(1),DIVER(2) / O170640000000, O000000000000 / - C DATA LOG10(1),LOG10(2) / O177746420232, O411757177572 /, SC/987/ - C --C ON FIRST CALL, IF NO DATA UNCOMMENTED, TEST MACHINE TYPES. -+C MACHINE CONSTANTS FOR THE VAX UNIX F77 COMPILER -+C -+C DATA SMALL(1),SMALL(2) / 128, 0 / -+C DATA LARGE(1),LARGE(2) / -32769, -1 / -+C DATA RIGHT(1),RIGHT(2) / 9344, 0 / -+C DATA DIVER(1),DIVER(2) / 9472, 0 / -+C DATA LOG10(1),LOG10(2) / 546979738, -805796613 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE VAX-11 WITH -+C FORTRAN IV-PLUS COMPILER -+C -+C DATA SMALL(1),SMALL(2) / Z00000080, Z00000000 / -+C DATA LARGE(1),LARGE(2) / ZFFFF7FFF, ZFFFFFFFF / -+C DATA RIGHT(1),RIGHT(2) / Z00002480, Z00000000 / -+C DATA DIVER(1),DIVER(2) / Z00002500, Z00000000 / -+C DATA LOG10(1),LOG10(2) / Z209A3F9A, ZCFF884FB /, SC/987/ -+C -+C MACHINE CONSTANTS FOR VAX/VMS VERSION 2.2 -+C -+C DATA SMALL(1),SMALL(2) / '80'X, '0'X / -+C DATA LARGE(1),LARGE(2) / 'FFFF7FFF'X, 'FFFFFFFF'X / -+C DATA RIGHT(1),RIGHT(2) / '2480'X, '0'X / -+C DATA DIVER(1),DIVER(2) / '2500'X, '0'X / -+C DATA LOG10(1),LOG10(2) / '209A3F9A'X, 'CFF884FB'X /, SC/987/ -+C -+C *** ISSUE STOP 779 IF ALL DATA STATEMENTS ARE COMMENTED... - IF (SC .NE. 987) THEN - DMACH(1) = 1.D13 - IF ( SMALL(1) .EQ. 1117925532 -@@ -118,80 +413,36 @@ - DIVER(2) = 0 - LOG10(1) = 1091781651 - LOG10(2) = 1352628735 -- ELSE IF ( SMALL(1) .EQ. 1120022684 -- * .AND. SMALL(2) .EQ. -448790528) THEN --* *** CONVEX C-1 *** -- SMALL(1) = 1048576 -- SMALL(2) = 0 -- LARGE(1) = 2147483647 -- LARGE(2) = -1 -- RIGHT(1) = 1019215872 -- RIGHT(2) = 0 -- DIVER(1) = 1020264448 -- DIVER(2) = 0 -- LOG10(1) = 1072907283 -- LOG10(2) = 1352628735 -- ELSE IF ( SMALL(1) .EQ. 815547074 -- * .AND. SMALL(2) .EQ. 58688) THEN --* *** VAX G-FLOATING *** -- SMALL(1) = 16 -- SMALL(2) = 0 -- LARGE(1) = -32769 -- LARGE(2) = -1 -- RIGHT(1) = 15552 -- RIGHT(2) = 0 -- DIVER(1) = 15568 -- DIVER(2) = 0 -- LOG10(1) = 1142112243 -- LOG10(2) = 2046775455 - ELSE -- DMACH(2) = 1.D27 + 1 -- DMACH(3) = 1.D27 -- LARGE(2) = LARGE(2) - RIGHT(2) -- IF (LARGE(2) .EQ. 64 .AND. SMALL(2) .EQ. 0) THEN -- CRAY1(1) = 67291416 -- DO 10 J = 1, 20 -- 10 CRAY1(J+1) = CRAY1(J) + CRAY1(J) -- CRAY1(22) = CRAY1(21) + 321322 -- DO 20 J = 22, 37 -- 20 CRAY1(J+1) = CRAY1(J) + CRAY1(J) -- IF (CRAY1(38) .EQ. SMALL(1)) THEN --* *** CRAY *** -- SMALL(1) = 2332160919536140288.D0 -- SMALL(2) = 0 -- LARGE(1) = 6917247552664371199.D0 -- LARGE(2) = 281474976710654.D0 -- RIGHT(1) = 4585649583081652224.D0 -- RIGHT(2) = 0 -- DIVER(1) = 4585931058058362880.D0 -- DIVER(2) = 0 -- LOG10(1) = 4611574008272714703.D0 -- LOG10(2) = 272234615232940.D0 -- ELSE -- WRITE(*,9000) -- STOP 779 -- END IF -- ELSE -- WRITE(*,9000) -- STOP 779 -- END IF -+ WRITE(*,9000) -+ STOP 779 - END IF - SC = 987 - END IF --* SANITY CHECK -+C -+C *** ISSUE STOP 778 IF ALL DATA STATEMENTS ARE OBVIOUSLY WRONG... - IF (DMACH(4) .GE. 1.0D0) STOP 778 -+*C/6S -+*C IF (I .LT. 1 .OR. I .GT. 5) -+*C 1 CALL SETERR(24HD1MACH - I OUT OF BOUNDS,24,1,2) -+*C/7S -+* IF (I .LT. 1 .OR. I .GT. 5) -+* 1 CALL SETERR('D1MACH - I OUT OF BOUNDS',24,1,2) -+*C/ - IF (I .LT. 1 .OR. I .GT. 5) THEN - WRITE(*,*) 'D1MACH(I): I =',I,' is out of bounds.' - STOP - END IF - D1MACH = DMACH(I) - RETURN -- 9000 FORMAT(/' Adjust D1MACH by uncommenting data statements'/ -- *' appropriate for your machine.') --* /* ANSI C source for D1MACH -- remove the * in column 1 */ -+ 9000 FORMAT(/46H Adjust D1MACH by uncommenting data statements/ -+ *30H appropriate for your machine.) -+C -+* /* C source for D1MACH -- remove the * in column 1 */ - *#include <stdio.h> - *#include <float.h> - *#include <math.h> -+* - *double d1mach_(long *i) - *{ - * switch(*i){ -@@ -201,7 +452,9 @@ - * case 4: return DBL_EPSILON; - * case 5: return log10(FLT_RADIX); - * } -+* - * fprintf(stderr, "invalid argument: d1mach(%ld)\n", *i); --* exit(1); return 0; /* for compilers that complain of missing return values */ --*} -+* exit(1); -+* return 0; /* for compilers that complain of missing return values */ -+* } - END ---- i1mach.f.orig Wed Apr 2 20:32:26 1997 -+++ i1mach.f Wed Apr 2 23:03:06 1997 -@@ -1,34 +1,300 @@ - INTEGER FUNCTION I1MACH(I) -- INTEGER I -+C -+C I/O UNIT NUMBERS. - C - C I1MACH( 1) = THE STANDARD INPUT UNIT. -+C - C I1MACH( 2) = THE STANDARD OUTPUT UNIT. -+C - C I1MACH( 3) = THE STANDARD PUNCH UNIT. -+C - C I1MACH( 4) = THE STANDARD ERROR MESSAGE UNIT. -+C -+C WORDS. -+C - C I1MACH( 5) = THE NUMBER OF BITS PER INTEGER STORAGE UNIT. -+C - C I1MACH( 6) = THE NUMBER OF CHARACTERS PER CHARACTER STORAGE UNIT. --C INTEGERS HAVE FORM SIGN ( X(S-1)*A**(S-1) + ... + X(1)*A + X(0) ) -+C FOR FORTRAN 77, THIS IS ALWAYS 1. FOR FORTRAN 66, -+C CHARACTER STORAGE UNIT = INTEGER STORAGE UNIT. -+C -+C INTEGERS. -+C -+C ASSUME INTEGERS ARE REPRESENTED IN THE S-DIGIT, BASE-A FORM -+C -+C SIGN ( X(S-1)*A**(S-1) + ... + X(1)*A + X(0) ) -+C -+C WHERE 0 .LE. X(I) .LT. A FOR I=0,...,S-1. -+C - C I1MACH( 7) = A, THE BASE. -+C - C I1MACH( 8) = S, THE NUMBER OF BASE-A DIGITS. -+C - C I1MACH( 9) = A**S - 1, THE LARGEST MAGNITUDE. --C FLOATS HAVE FORM SIGN (B**E)*( (X(1)/B) + ... + (X(T)/B**T) ) --C WHERE EMIN .LE. E .LE. EMAX. -+C -+C FLOATING-POINT NUMBERS. -+C -+C ASSUME FLOATING-POINT NUMBERS ARE REPRESENTED IN THE T-DIGIT, -+C BASE-B FORM -+C -+C SIGN (B**E)*( (X(1)/B) + ... + (X(T)/B**T) ) -+C -+C WHERE 0 .LE. X(I) .LT. B FOR I=1,...,T, -+C 0 .LT. X(1), AND EMIN .LE. E .LE. EMAX. -+C - C I1MACH(10) = B, THE BASE. -+C - C SINGLE-PRECISION -+C - C I1MACH(11) = T, THE NUMBER OF BASE-B DIGITS. -+C - C I1MACH(12) = EMIN, THE SMALLEST EXPONENT E. -+C - C I1MACH(13) = EMAX, THE LARGEST EXPONENT E. -+C - C DOUBLE-PRECISION -+C - C I1MACH(14) = T, THE NUMBER OF BASE-B DIGITS. -+C - C I1MACH(15) = EMIN, THE SMALLEST EXPONENT E. -+C - C I1MACH(16) = EMAX, THE LARGEST EXPONENT E. - C -- INTEGER CRAY1, IMACH(16), OUTPUT, SANITY, SMALL(2) -- COMMON /D8MACH/ CRAY1 -+C TO ALTER THIS FUNCTION FOR A PARTICULAR ENVIRONMENT, -+C THE DESIRED SET OF DATA STATEMENTS SHOULD BE ACTIVATED BY -+C REMOVING THE C FROM COLUMN 1. ALSO, THE VALUES OF -+C I1MACH(1) - I1MACH(4) SHOULD BE CHECKED FOR CONSISTENCY -+C WITH THE LOCAL OPERATING SYSTEM. FOR FORTRAN 77, YOU MAY WISH -+C TO ADJUST THE DATA STATEMENT SO IMACH(6) IS SET TO 1, AND -+C THEN TO COMMENT OUT THE EXECUTABLE TEST ON I .EQ. 6 BELOW. -+C -+C FOR IEEE-ARITHMETIC MACHINES (BINARY STANDARD), THE FIRST -+C SET OF CONSTANTS BELOW SHOULD BE APPROPRIATE, EXCEPT PERHAPS -+C FOR IMACH(1) - IMACH(4). -+C -+C COMMENTS JUST BEFORE THE END STATEMENT (LINES STARTING WITH *) -+C GIVE C SOURCE FOR I1MACH. -+C -+ INTEGER IMACH(16), OUTPUT, SANITY, SMALL(2) -+C/6S -+C/7S - SAVE IMACH, SANITY -+C/ - REAL RMACH -+C - EQUIVALENCE (IMACH(4),OUTPUT), (RMACH,SMALL(1)) - C -+C MACHINE CONSTANTS FOR IEEE ARITHMETIC MACHINES, SUCH AS THE AT&T -+C 3B SERIES, MOTOROLA 68000 BASED MACHINES (E.G. SUN 3 AND AT&T -+C PC 7300), AND 8087 BASED MICROS (E.G. IBM PC AND AT&T 6300). -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 7 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 32 / -+C DATA IMACH( 6) / 4 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 31 / -+C DATA IMACH( 9) / 2147483647 / -+C DATA IMACH(10) / 2 / -+C DATA IMACH(11) / 24 / -+C DATA IMACH(12) / -125 / -+C DATA IMACH(13) / 128 / -+C DATA IMACH(14) / 53 / -+C DATA IMACH(15) / -1021 / -+C DATA IMACH(16) / 1024 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR AMDAHL MACHINES. -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 7 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 32 / -+C DATA IMACH( 6) / 4 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 31 / -+C DATA IMACH( 9) / 2147483647 / -+C DATA IMACH(10) / 16 / -+C DATA IMACH(11) / 6 / -+C DATA IMACH(12) / -64 / -+C DATA IMACH(13) / 63 / -+C DATA IMACH(14) / 14 / -+C DATA IMACH(15) / -64 / -+C DATA IMACH(16) / 63 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR THE BURROUGHS 1700 SYSTEM. -+C -+C DATA IMACH( 1) / 7 / -+C DATA IMACH( 2) / 2 / -+C DATA IMACH( 3) / 2 / -+C DATA IMACH( 4) / 2 / -+C DATA IMACH( 5) / 36 / -+C DATA IMACH( 6) / 4 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 33 / -+C DATA IMACH( 9) / Z1FFFFFFFF / -+C DATA IMACH(10) / 2 / -+C DATA IMACH(11) / 24 / -+C DATA IMACH(12) / -256 / -+C DATA IMACH(13) / 255 / -+C DATA IMACH(14) / 60 / -+C DATA IMACH(15) / -256 / -+C DATA IMACH(16) / 255 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR THE BURROUGHS 5700 SYSTEM. -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 7 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 48 / -+C DATA IMACH( 6) / 6 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 39 / -+C DATA IMACH( 9) / O0007777777777777 / -+C DATA IMACH(10) / 8 / -+C DATA IMACH(11) / 13 / -+C DATA IMACH(12) / -50 / -+C DATA IMACH(13) / 76 / -+C DATA IMACH(14) / 26 / -+C DATA IMACH(15) / -50 / -+C DATA IMACH(16) / 76 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR THE BURROUGHS 6700/7700 SYSTEMS. -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 7 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 48 / -+C DATA IMACH( 6) / 6 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 39 / -+C DATA IMACH( 9) / O0007777777777777 / -+C DATA IMACH(10) / 8 / -+C DATA IMACH(11) / 13 / -+C DATA IMACH(12) / -50 / -+C DATA IMACH(13) / 76 / -+C DATA IMACH(14) / 26 / -+C DATA IMACH(15) / -32754 / -+C DATA IMACH(16) / 32780 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR FTN4 ON THE CDC 6000/7000 SERIES. -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 7 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 60 / -+C DATA IMACH( 6) / 10 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 48 / -+C DATA IMACH( 9) / 00007777777777777777B / -+C DATA IMACH(10) / 2 / -+C DATA IMACH(11) / 47 / -+C DATA IMACH(12) / -929 / -+C DATA IMACH(13) / 1070 / -+C DATA IMACH(14) / 94 / -+C DATA IMACH(15) / -929 / -+C DATA IMACH(16) / 1069 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR FTN5 ON THE CDC 6000/7000 SERIES. -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 7 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 60 / -+C DATA IMACH( 6) / 10 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 48 / -+C DATA IMACH( 9) / O"00007777777777777777" / -+C DATA IMACH(10) / 2 / -+C DATA IMACH(11) / 47 / -+C DATA IMACH(12) / -929 / -+C DATA IMACH(13) / 1070 / -+C DATA IMACH(14) / 94 / -+C DATA IMACH(15) / -929 / -+C DATA IMACH(16) / 1069 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR CONVEX C-1. -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 7 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 32 / -+C DATA IMACH( 6) / 4 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 31 / -+C DATA IMACH( 9) / 2147483647 / -+C DATA IMACH(10) / 2 / -+C DATA IMACH(11) / 24 / -+C DATA IMACH(12) / -128 / -+C DATA IMACH(13) / 127 / -+C DATA IMACH(14) / 53 / -+C DATA IMACH(15) /-1024 / -+C DATA IMACH(16) / 1023 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR THE CRAY 1, XMP, 2, AND 3. -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 102 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 64 / -+C DATA IMACH( 6) / 8 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 63 / -+C DATA IMACH( 9) / 777777777777777777777B / -+C DATA IMACH(10) / 2 / -+C DATA IMACH(11) / 47 / -+C DATA IMACH(12) / -8189 / -+C DATA IMACH(13) / 8190 / -+C DATA IMACH(14) / 94 / -+C DATA IMACH(15) / -8099 / -+C DATA IMACH(16) / 8190 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR THE DATA GENERAL ECLIPSE S/200. -+C -+C DATA IMACH( 1) / 11 / -+C DATA IMACH( 2) / 12 / -+C DATA IMACH( 3) / 8 / -+C DATA IMACH( 4) / 10 / -+C DATA IMACH( 5) / 16 / -+C DATA IMACH( 6) / 2 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 15 / -+C DATA IMACH( 9) /32767 / -+C DATA IMACH(10) / 16 / -+C DATA IMACH(11) / 6 / -+C DATA IMACH(12) / -64 / -+C DATA IMACH(13) / 63 / -+C DATA IMACH(14) / 14 / -+C DATA IMACH(15) / -64 / -+C DATA IMACH(16) / 63 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR THE HARRIS SLASH 6 AND SLASH 7. -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 0 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 24 / -+C DATA IMACH( 6) / 3 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 23 / -+C DATA IMACH( 9) / 8388607 / -+C DATA IMACH(10) / 2 / -+C DATA IMACH(11) / 23 / -+C DATA IMACH(12) / -127 / -+C DATA IMACH(13) / 127 / -+C DATA IMACH(14) / 38 / -+C DATA IMACH(15) / -127 / -+C DATA IMACH(16) / 127 /, SANITY/987/ -+C - C MACHINE CONSTANTS FOR THE HONEYWELL DPS 8/70 SERIES. - C - C DATA IMACH( 1) / 5 / -@@ -48,6 +314,87 @@ - C DATA IMACH(15) / -127 / - C DATA IMACH(16) / 127 /, SANITY/987/ - C -+C MACHINE CONSTANTS FOR THE IBM 360/370 SERIES, -+C THE XEROX SIGMA 5/7/9 AND THE SEL SYSTEMS 85/86. -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 7 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 32 / -+C DATA IMACH( 6) / 4 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 31 / -+C DATA IMACH( 9) / Z7FFFFFFF / -+C DATA IMACH(10) / 16 / -+C DATA IMACH(11) / 6 / -+C DATA IMACH(12) / -64 / -+C DATA IMACH(13) / 63 / -+C DATA IMACH(14) / 14 / -+C DATA IMACH(15) / -64 / -+C DATA IMACH(16) / 63 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR THE INTERDATA 8/32 -+C WITH THE UNIX SYSTEM FORTRAN 77 COMPILER. -+C -+C FOR THE INTERDATA FORTRAN VII COMPILER REPLACE -+C THE Z'S SPECIFYING HEX CONSTANTS WITH Y'S. -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 6 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 32 / -+C DATA IMACH( 6) / 4 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 31 / -+C DATA IMACH( 9) / Z'7FFFFFFF' / -+C DATA IMACH(10) / 16 / -+C DATA IMACH(11) / 6 / -+C DATA IMACH(12) / -64 / -+C DATA IMACH(13) / 62 / -+C DATA IMACH(14) / 14 / -+C DATA IMACH(15) / -64 / -+C DATA IMACH(16) / 62 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR THE PDP-10 (KA PROCESSOR). -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 7 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 36 / -+C DATA IMACH( 6) / 5 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 35 / -+C DATA IMACH( 9) / "377777777777 / -+C DATA IMACH(10) / 2 / -+C DATA IMACH(11) / 27 / -+C DATA IMACH(12) / -128 / -+C DATA IMACH(13) / 127 / -+C DATA IMACH(14) / 54 / -+C DATA IMACH(15) / -101 / -+C DATA IMACH(16) / 127 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR THE PDP-10 (KI PROCESSOR). -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 7 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 36 / -+C DATA IMACH( 6) / 5 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 35 / -+C DATA IMACH( 9) / "377777777777 / -+C DATA IMACH(10) / 2 / -+C DATA IMACH(11) / 27 / -+C DATA IMACH(12) / -128 / -+C DATA IMACH(13) / 127 / -+C DATA IMACH(14) / 62 / -+C DATA IMACH(15) / -128 / -+C DATA IMACH(16) / 127 /, SANITY/987/ -+C - C MACHINE CONSTANTS FOR PDP-11 FORTRANS SUPPORTING - C 32-BIT INTEGER ARITHMETIC. - C -@@ -68,6 +415,47 @@ - C DATA IMACH(15) / -127 / - C DATA IMACH(16) / 127 /, SANITY/987/ - C -+C MACHINE CONSTANTS FOR PDP-11 FORTRANS SUPPORTING -+C 16-BIT INTEGER ARITHMETIC. -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 7 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 16 / -+C DATA IMACH( 6) / 2 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 15 / -+C DATA IMACH( 9) / 32767 / -+C DATA IMACH(10) / 2 / -+C DATA IMACH(11) / 24 / -+C DATA IMACH(12) / -127 / -+C DATA IMACH(13) / 127 / -+C DATA IMACH(14) / 56 / -+C DATA IMACH(15) / -127 / -+C DATA IMACH(16) / 127 /, SANITY/987/ -+C -+C MACHINE CONSTANTS FOR THE PRIME 50 SERIES SYSTEMS -+C WTIH 32-BIT INTEGERS AND 64V MODE INSTRUCTIONS, -+C SUPPLIED BY IGOR BRAY. -+C -+C DATA IMACH( 1) / 1 / -+C DATA IMACH( 2) / 1 / -+C DATA IMACH( 3) / 2 / -+C DATA IMACH( 4) / 1 / -+C DATA IMACH( 5) / 32 / -+C DATA IMACH( 6) / 4 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 31 / -+C DATA IMACH( 9) / :17777777777 / -+C DATA IMACH(10) / 2 / -+C DATA IMACH(11) / 23 / -+C DATA IMACH(12) / -127 / -+C DATA IMACH(13) / +127 / -+C DATA IMACH(14) / 47 / -+C DATA IMACH(15) / -32895 / -+C DATA IMACH(16) / +32637 /, SANITY/987/ -+C - C MACHINE CONSTANTS FOR THE SEQUENT BALANCE 8000. - C - C DATA IMACH( 1) / 0 / -@@ -110,6 +498,26 @@ - C DATA IMACH(15) /-1024 / - C DATA IMACH(16) / 1023 /, SANITY/987/ - C -+C MACHINE CONSTANTS FOR VAX. -+C -+C DATA IMACH( 1) / 5 / -+C DATA IMACH( 2) / 6 / -+C DATA IMACH( 3) / 7 / -+C DATA IMACH( 4) / 6 / -+C DATA IMACH( 5) / 32 / -+C DATA IMACH( 6) / 4 / -+C DATA IMACH( 7) / 2 / -+C DATA IMACH( 8) / 31 / -+C DATA IMACH( 9) / 2147483647 / -+C DATA IMACH(10) / 2 / -+C DATA IMACH(11) / 24 / -+C DATA IMACH(12) / -127 / -+C DATA IMACH(13) / 127 / -+C DATA IMACH(14) / 56 / -+C DATA IMACH(15) / -127 / -+C DATA IMACH(16) / 127 /, SANITY/987/ -+C -+C *** ISSUE STOP 775 IF ALL DATA STATEMENTS ARE COMMENTED... - IF (SANITY .NE. 987) THEN - * *** CHECK FOR AUTODOUBLE *** - SMALL(2) = 0 -@@ -169,7 +577,7 @@ - IMACH(16) = 127 - SANITY = 987 - ELSE IF (SMALL(1) .EQ. 1175639687) THEN --* *** IBM MAINFRAME *** -+* *** IBM *** - IMACH(10) = 16 - IMACH(11) = 6 - IMACH(12) = -64 -@@ -178,41 +586,9 @@ - IMACH(15) = -64 - IMACH(16) = 63 - SANITY = 987 -- ELSE IF (SMALL(1) .EQ. 1251390520) THEN --* *** CONVEX C-1 *** -- IMACH(10) = 2 -- IMACH(11) = 24 -- IMACH(12) = -128 -- IMACH(13) = 127 -- IMACH(14) = 53 -- IMACH(15) = -1024 -- IMACH(16) = 1023 -- SANITY = 987 - ELSE -- CRAY1 = 4617762693716115456.D0 -- IF (SMALL(1) .NE. CRAY1) THEN -- WRITE(*,9020) -- STOP 777 -- END IF --* *** CRAY 1, XMP, 2, AND 3 *** -- IMACH(1) = 5 -- IMACH(2) = 6 -- IMACH(3) = 102 -- IMACH(4) = 6 -- IMACH(5) = 64 -- IMACH(6) = 8 -- IMACH(7) = 2 -- IMACH(8) = 63 -- IMACH(9) = 9223372036854775807.D0 -- IMACH(10) = 2 -- IMACH(11) = 47 -- IMACH(12) = -8189 -- IMACH(13) = 8190 -- IMACH(14) = 94 -- IMACH(15) = -8099 -- IMACH(16) = 8190 -- SANITY = 987 -- GO TO 10 -+ WRITE(*,9020) -+ STOP 777 - END IF - END IF - IMACH( 1) = 5 -@@ -226,20 +602,28 @@ - IMACH( 9) = 2147483647 - SANITY = 987 - END IF -- 9010 FORMAT(/' Adjust autodoubled I1MACH by uncommenting data'/ -- * ' statements appropriate for your machine and setting'/ -- * ' IMACH(I) = IMACH(I+3) for I = 11, 12, and 13.') -- 9020 FORMAT(/' Adjust I1MACH by uncommenting data statements'/ -- * ' appropriate for your machine.') -- 10 IF (I .LT. 1 .OR. I .GT. 16) GO TO 30 -+ 9010 FORMAT(/47H Adjust autodoubled I1MACH by uncommenting data/ -+ * 52H statements appropriate for your machine and setting/ -+ * 46H IMACH(I) = IMACH(I+3) for I = 11, 12, and 13.) -+ 9020 FORMAT(/46H Adjust I1MACH by uncommenting data statements/ -+ * 30H appropriate for your machine.) -+ IF (I .LT. 1 .OR. I .GT. 16) GO TO 30 -+C - I1MACH = IMACH(I) --C REMOVE THE FOLLOWING LINE IF FORTRAN66 IS PREFERRED TO FORTRAN77. -+C/6S -+C/7S - IF (I .EQ. 6) I1MACH = 1 -+C/ - RETURN -+C - 30 WRITE(*,*) 'I1MACH(I): I =',I,' is out of bounds.' -+C -+* CALL FDUMP -+C - STOP -+C - * /* C source for I1MACH -- remove the * in column 1 */ --* /* Note that some values may need changing. */ -+* /* Note that some values may need changing -- see the comments below. */ - *#include <stdio.h> - *#include <float.h> - *#include <limits.h> -@@ -248,14 +632,15 @@ - *long i1mach_(long *i) - *{ - * switch(*i){ --* case 1: return 5; /* standard input */ --* case 2: return 6; /* standard output */ --* case 3: return 7; /* standard punch */ --* case 4: return 0; /* standard error */ --* case 5: return 32; /* bits per integer */ --* case 6: return 1; /* Fortran 77 value */ --* case 7: return 2; /* base for integers */ --* case 8: return 31; /* digits of integer base */ -+* case 1: return 5; /* standard input unit -- may need changing */ -+* case 2: return 6; /* standard output unit -- may need changing */ -+* case 3: return 7; /* standard punch unit -- may need changing */ -+* case 4: return 0; /* standard error unit -- may need changing */ -+* case 5: return 32; /* bits per integer -- may need changing */ -+* case 6: return 1; /* Fortran 77 value: 1 character */ -+* /* per character storage unit */ -+* case 7: return 2; /* base for integers -- may need changing */ -+* case 8: return 31; /* digits of integer base -- may need changing */ - * case 9: return LONG_MAX; - * case 10: return FLT_RADIX; - * case 11: return FLT_MANT_DIG; -@@ -265,7 +650,9 @@ - * case 15: return DBL_MIN_EXP; - * case 16: return DBL_MAX_EXP; - * } -+* - * fprintf(stderr, "invalid argument: i1mach(%ld)\n", *i); --* exit(1);return 0; /* for compilers that complain of missing return values */ --*} -+* exit(1); -+* return 0; /* for compilers that complain of missing return values */ -+* } - END ---- r1mach.f.orig Wed Apr 2 20:32:27 1997 -+++ r1mach.f Wed Apr 2 23:03:19 1997 -@@ -1,36 +1,135 @@ - REAL FUNCTION R1MACH(I) -- INTEGER I - C - C SINGLE-PRECISION MACHINE CONSTANTS -+C - C R1MACH(1) = B**(EMIN-1), THE SMALLEST POSITIVE MAGNITUDE. -+C - C R1MACH(2) = B**EMAX*(1 - B**(-T)), THE LARGEST MAGNITUDE. -+C - C R1MACH(3) = B**(-T), THE SMALLEST RELATIVE SPACING. -+C - C R1MACH(4) = B**(1-T), THE LARGEST RELATIVE SPACING. -+C - C R1MACH(5) = LOG10(B) - C --C THIS VERSION ADAPTS AUTOMATICALLY TO MOST CURRENT MACHINES, --C INCLUDING AUTO-DOUBLE COMPILERS. --C TO ALTER FOR A PARTICULAR ENVIRONMENT, THE DESIRED SET OF DATA --C STATEMENTS MAY BE ACTIVATED BY REMOVING THE C FROM COLUMN 1. --C CONSTANTS FOR OLDER MACHINES CAN BE OBTAINED BY --C mail netlib@research.bell-labs.com --C send old1mach from blas --C PLEASE SEND CORRECTIONS TO dmg OR ehg@bell-labs.com. -+C TO ALTER THIS FUNCTION FOR A PARTICULAR ENVIRONMENT, -+C THE DESIRED SET OF DATA STATEMENTS SHOULD BE ACTIVATED BY -+C REMOVING THE C FROM COLUMN 1. -+C -+C FOR IEEE-ARITHMETIC MACHINES (BINARY STANDARD), THE FIRST -+C SET OF CONSTANTS BELOW SHOULD BE APPROPRIATE. -+C -+C WHERE POSSIBLE, DECIMAL, OCTAL OR HEXADECIMAL CONSTANTS ARE USED -+C TO SPECIFY THE CONSTANTS EXACTLY. SOMETIMES THIS REQUIRES USING -+C EQUIVALENT INTEGER ARRAYS. IF YOUR COMPILER USES HALF-WORD -+C INTEGERS BY DEFAULT (SOMETIMES CALLED INTEGER*2), YOU MAY NEED TO -+C CHANGE INTEGER TO INTEGER*4 OR OTHERWISE INSTRUCT YOUR COMPILER -+C TO USE FULL-WORD INTEGERS IN THE NEXT 5 DECLARATIONS. -+C -+C COMMENTS JUST BEFORE THE END STATEMENT (LINES STARTING WITH *) -+C GIVE C SOURCE FOR R1MACH. - C - INTEGER SMALL(2) - INTEGER LARGE(2) - INTEGER RIGHT(2) - INTEGER DIVER(2) - INTEGER LOG10(2) -- INTEGER CRAY1, SC -- COMMON /D8MACH/ CRAY1 -+ INTEGER SC -+C/6S -+C/7S - SAVE SMALL, LARGE, RIGHT, DIVER, LOG10, SC -+C/ - REAL RMACH(5) -+C - EQUIVALENCE (RMACH(1),SMALL(1)) - EQUIVALENCE (RMACH(2),LARGE(1)) - EQUIVALENCE (RMACH(3),RIGHT(1)) - EQUIVALENCE (RMACH(4),DIVER(1)) - EQUIVALENCE (RMACH(5),LOG10(1)) -+C -+C MACHINE CONSTANTS FOR IEEE ARITHMETIC MACHINES, SUCH AS THE AT&T -+C 3B SERIES, MOTOROLA 68000 BASED MACHINES (E.G. SUN 3 AND AT&T -+C PC 7300), AND 8087 BASED MICROS (E.G. IBM PC AND AT&T 6300). -+C -+C DATA SMALL(1) / 8388608 / -+C DATA LARGE(1) / 2139095039 / -+C DATA RIGHT(1) / 864026624 / -+C DATA DIVER(1) / 872415232 / -+C DATA LOG10(1) / 1050288283 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR AMDAHL MACHINES. -+C -+C DATA SMALL(1) / 1048576 / -+C DATA LARGE(1) / 2147483647 / -+C DATA RIGHT(1) / 990904320 / -+C DATA DIVER(1) / 1007681536 / -+C DATA LOG10(1) / 1091781651 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE BURROUGHS 1700 SYSTEM. -+C -+C DATA RMACH(1) / Z400800000 / -+C DATA RMACH(2) / Z5FFFFFFFF / -+C DATA RMACH(3) / Z4E9800000 / -+C DATA RMACH(4) / Z4EA800000 / -+C DATA RMACH(5) / Z500E730E8 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE BURROUGHS 5700/6700/7700 SYSTEMS. -+C -+C DATA RMACH(1) / O1771000000000000 / -+C DATA RMACH(2) / O0777777777777777 / -+C DATA RMACH(3) / O1311000000000000 / -+C DATA RMACH(4) / O1301000000000000 / -+C DATA RMACH(5) / O1157163034761675 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR FTN4 ON THE CDC 6000/7000 SERIES. -+C -+C DATA RMACH(1) / 00564000000000000000B / -+C DATA RMACH(2) / 37767777777777777776B / -+C DATA RMACH(3) / 16414000000000000000B / -+C DATA RMACH(4) / 16424000000000000000B / -+C DATA RMACH(5) / 17164642023241175720B /, SC/987/ -+C -+C MACHINE CONSTANTS FOR FTN5 ON THE CDC 6000/7000 SERIES. -+C -+C DATA RMACH(1) / O"00564000000000000000" / -+C DATA RMACH(2) / O"37767777777777777776" / -+C DATA RMACH(3) / O"16414000000000000000" / -+C DATA RMACH(4) / O"16424000000000000000" / -+C DATA RMACH(5) / O"17164642023241175720" /, SC/987/ -+C -+C MACHINE CONSTANTS FOR CONVEX C-1. -+C -+C DATA RMACH(1) / '00800000'X / -+C DATA RMACH(2) / '7FFFFFFF'X / -+C DATA RMACH(3) / '34800000'X / -+C DATA RMACH(4) / '35000000'X / -+C DATA RMACH(5) / '3F9A209B'X /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE CRAY 1, XMP, 2, AND 3. -+C -+C DATA RMACH(1) / 200034000000000000000B / -+C DATA RMACH(2) / 577767777777777777776B / -+C DATA RMACH(3) / 377224000000000000000B / -+C DATA RMACH(4) / 377234000000000000000B / -+C DATA RMACH(5) / 377774642023241175720B /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE DATA GENERAL ECLIPSE S/200. -+C -+C NOTE - IT MAY BE APPROPRIATE TO INCLUDE THE FOLLOWING LINE - -+C STATIC RMACH(5) -+C -+C DATA SMALL/20K,0/,LARGE/77777K,177777K/ -+C DATA RIGHT/35420K,0/,DIVER/36020K,0/ -+C DATA LOG10/40423K,42023K/, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE HARRIS SLASH 6 AND SLASH 7. -+C -+C DATA SMALL(1),SMALL(2) / '20000000, '00000201 / -+C DATA LARGE(1),LARGE(2) / '37777777, '00000177 / -+C DATA RIGHT(1),RIGHT(2) / '20000000, '00000352 / -+C DATA DIVER(1),DIVER(2) / '20000000, '00000353 / -+C DATA LOG10(1),LOG10(2) / '23210115, '00000377 /, SC/987/ -+C - C MACHINE CONSTANTS FOR THE HONEYWELL DPS 8/70 SERIES. - C - C DATA RMACH(1) / O402400000000 / -@@ -39,6 +138,35 @@ - C DATA RMACH(4) / O716400000000 / - C DATA RMACH(5) / O776464202324 /, SC/987/ - C -+C MACHINE CONSTANTS FOR THE IBM 360/370 SERIES, -+C THE XEROX SIGMA 5/7/9 AND THE SEL SYSTEMS 85/86. -+C -+C DATA RMACH(1) / Z00100000 / -+C DATA RMACH(2) / Z7FFFFFFF / -+C DATA RMACH(3) / Z3B100000 / -+C DATA RMACH(4) / Z3C100000 / -+C DATA RMACH(5) / Z41134413 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE INTERDATA 8/32 -+C WITH THE UNIX SYSTEM FORTRAN 77 COMPILER. -+C -+C FOR THE INTERDATA FORTRAN VII COMPILER REPLACE -+C THE Z'S SPECIFYING HEX CONSTANTS WITH Y'S. -+C -+C DATA RMACH(1) / Z'00100000' / -+C DATA RMACH(2) / Z'7EFFFFFF' / -+C DATA RMACH(3) / Z'3B100000' / -+C DATA RMACH(4) / Z'3C100000' / -+C DATA RMACH(5) / Z'41134413' /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE PDP-10 (KA OR KI PROCESSOR). -+C -+C DATA RMACH(1) / "000400000000 / -+C DATA RMACH(2) / "377777777777 / -+C DATA RMACH(3) / "146400000000 / -+C DATA RMACH(4) / "147400000000 / -+C DATA RMACH(5) / "177464202324 /, SC/987/ -+C - C MACHINE CONSTANTS FOR PDP-11 FORTRANS SUPPORTING - C 32-BIT INTEGERS (EXPRESSED IN INTEGER AND OCTAL). - C -@@ -54,6 +182,21 @@ - C DATA RMACH(4) / O06500000000 / - C DATA RMACH(5) / O07746420233 /, SC/987/ - C -+C MACHINE CONSTANTS FOR PDP-11 FORTRANS SUPPORTING -+C 16-BIT INTEGERS (EXPRESSED IN INTEGER AND OCTAL). -+C -+C DATA SMALL(1),SMALL(2) / 128, 0 / -+C DATA LARGE(1),LARGE(2) / 32767, -1 / -+C DATA RIGHT(1),RIGHT(2) / 13440, 0 / -+C DATA DIVER(1),DIVER(2) / 13568, 0 / -+C DATA LOG10(1),LOG10(2) / 16282, 8347 /, SC/987/ -+C -+C DATA SMALL(1),SMALL(2) / O000200, O000000 / -+C DATA LARGE(1),LARGE(2) / O077777, O177777 / -+C DATA RIGHT(1),RIGHT(2) / O032200, O000000 / -+C DATA DIVER(1),DIVER(2) / O032400, O000000 / -+C DATA LOG10(1),LOG10(2) / O037632, O020233 /, SC/987/ -+C - C MACHINE CONSTANTS FOR THE SEQUENT BALANCE 8000. - C - C DATA SMALL(1) / $00800000 / -@@ -70,6 +213,32 @@ - C DATA RMACH(4) / O147400000000 / - C DATA RMACH(5) / O177464202324 /, SC/987/ - C -+C MACHINE CONSTANTS FOR THE VAX UNIX F77 COMPILER. -+C -+C DATA SMALL(1) / 128 / -+C DATA LARGE(1) / -32769 / -+C DATA RIGHT(1) / 13440 / -+C DATA DIVER(1) / 13568 / -+C DATA LOG10(1) / 547045274 /, SC/987/ -+C -+C MACHINE CONSTANTS FOR THE VAX-11 WITH -+C FORTRAN IV-PLUS COMPILER. -+C -+C DATA RMACH(1) / Z00000080 / -+C DATA RMACH(2) / ZFFFF7FFF / -+C DATA RMACH(3) / Z00003480 / -+C DATA RMACH(4) / Z00003500 / -+C DATA RMACH(5) / Z209B3F9A /, SC/987/ -+C -+C MACHINE CONSTANTS FOR VAX/VMS VERSION 2.2. -+C -+C DATA RMACH(1) / '80'X / -+C DATA RMACH(2) / 'FFFF7FFF'X / -+C DATA RMACH(3) / '3480'X / -+C DATA RMACH(4) / '3500'X / -+C DATA RMACH(5) / '209B3F9A'X /, SC/987/ -+C -+C *** ISSUE STOP 777 IF ALL DATA STATEMENTS ARE COMMENTED... - IF (SC .NE. 987) THEN - * *** CHECK FOR AUTODOUBLE *** - SMALL(2) = 0 -@@ -149,51 +318,46 @@ - DIVER(1) = 13568 - LOG10(1) = 547045274 - ELSE IF (SMALL(1) .EQ. 1175639687) THEN --* *** IBM MAINFRAME *** -+* *** IBM *** - SMALL(1) = 1048576 - LARGE(1) = 2147483647 - RIGHT(1) = 990904320 - DIVER(1) = 1007681536 - LOG10(1) = 1091781651 -- ELSE IF (SMALL(1) .EQ. 1251390520) THEN --* *** CONVEX C-1 *** -- SMALL(1) = 8388608 -- LARGE(1) = 2147483647 -- RIGHT(1) = 880803840 -- DIVER(1) = 889192448 -- LOG10(1) = 1067065499 - ELSE -- CRAY1 = 4617762693716115456.D0 -- IF (SMALL(1) .NE. CRAY1) THEN -- WRITE(*,9020) -- STOP 777 -- END IF --* *** CRAY 1, XMP, 2, AND 3 *** -- SMALL(1) = 2306828171632181248.D0 -- LARGE(1) = 6917247552664371198.D0 -- RIGHT(1) = 4598878906987053056.D0 -- DIVER(1) = 4599160381963763712.D0 -- LOG10(1) = 4611574008272714704.D0 -+ WRITE(*,9020) -+ STOP 777 - END IF - END IF - SC = 987 - END IF --* SANITY CHECK -+C -+C *** ISSUE STOP 776 IF ALL DATA STATEMENTS ARE OBVIOUSLY WRONG... - IF (RMACH(4) .GE. 1.0) STOP 776 -+*C/6S -+*C IF (I .LT. 1 .OR. I .GT. 5) -+*C 1 CALL SETERR(24HR1MACH - I OUT OF BOUNDS,24,1,2) -+*C/7S -+* IF (I .LT. 1 .OR. I .GT. 5) -+* 1 CALL SETERR('R1MACH - I OUT OF BOUNDS',24,1,2) -+*C/ -+C - IF (I .LT. 1 .OR. I .GT. 5) THEN - WRITE(*,*) 'R1MACH(I): I =',I,' is out of bounds.' - STOP - END IF - R1MACH = RMACH(I) - RETURN -- 9010 FORMAT(/' Adjust autodoubled R1MACH by getting data'/ -- *' appropriate for your machine from D1MACH.') -- 9020 FORMAT(/' Adjust R1MACH by uncommenting data statements'/ -- *' appropriate for your machine.') -+ 9010 FORMAT(/42H Adjust autodoubled R1MACH by getting data/ -+ *42H appropriate for your machine from D1MACH.) -+ 9020 FORMAT(/46H Adjust R1MACH by uncommenting data statements/ -+ *30H appropriate for your machine.) -+C - * /* C source for R1MACH -- remove the * in column 1 */ - *#include <stdio.h> - *#include <float.h> - *#include <math.h> -+* - *float r1mach_(long *i) - *{ - * switch(*i){ -@@ -203,7 +367,9 @@ - * case 4: return FLT_EPSILON; - * case 5: return log10(FLT_RADIX); - * } -+* - * fprintf(stderr, "invalid argument: r1mach(%ld)\n", *i); --* exit(1); return 0; /* for compilers that complain of missing return values */ --*} -+* exit(1); -+* return 0; /* for compilers that complain of missing return values */ -+* } - END diff -rNu /cdrom/ports/math/blas/pkg/DESCR blas/pkg/DESCR --- /cdrom/ports/math/blas/pkg/DESCR Thu Oct 27 10:05:16 1994 +++ blas/pkg/DESCR Fri Nov 21 12:33:45 1997 @@ -1,5 +1,11 @@ -This is BLAS 1, 2, and 3 from research.att.com. I cleaned up the makefile -and created a second() function. This is used by linpack, eispack, and -lapack. -BLAS stands for Basic Linear Algebra (System?). It is a Fortran library, but -can be called from C, C++, or whatever. \ No newline at end of file + +The BLAS (Basic Linear Algebra Subprograms) are high quality "building +block" routines for performing basic vector and matrix operations. Level 1 +BLAS do vector-vector operations, Level 2 BLAS do matrix-vector operations, +and Level 3 BLAS do matrix-matrix operations. Because the BLAS are +efficient, portable, and widely available, they're commonly used in the +development of high quality linear algebra software, LINPACK and LAPACK for +example. + +A Fortran77 reference implementation of the BLAS is located in the blas +directory of Netlib. diff -rNu /cdrom/ports/math/blas/pkg/PLIST blas/pkg/PLIST --- /cdrom/ports/math/blas/pkg/PLIST Mon Nov 18 09:04:49 1996 +++ blas/pkg/PLIST Fri Nov 21 12:34:33 1997 @@ -1,3 +1,3 @@ -lib/libcor.a -lib/libcor.so.1.0 +lib/libblas.a +lib/libblas.so.1.0 @exec /sbin/ldconfig -m %B diff -rNu /cdrom/ports/math/blas/scripts/uncomp blas/scripts/uncomp --- /cdrom/ports/math/blas/scripts/uncomp Thu Oct 27 10:05:16 1994 +++ blas/scripts/uncomp Fri Nov 21 14:16:04 1997 @@ -3,4 +3,4 @@ infile=$2 outfile=`basename $infile .Z` echo Uncompressing $infile to $outdir/$outfile -zcat $infile > $outdir/$outfile \ No newline at end of file +zcat $infile > $outdir/$outfile >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199711212043.MAA09995>