aboutsummaryrefslogtreecommitdiff
path: root/math/atlas
diff options
context:
space:
mode:
authorMaho Nakata <maho@FreeBSD.org>2007-12-19 22:47:57 +0000
committerMaho Nakata <maho@FreeBSD.org>2007-12-19 22:47:57 +0000
commit311264a24fd8c37f9ac75b7d73c911f61e8c4e71 (patch)
tree543718ba71a3aa08c4fab4525c9c32a82fedcd48 /math/atlas
parent85127e0d2718010020f0c0704bcc664ac8859b5b (diff)
downloadports-311264a24fd8c37f9ac75b7d73c911f61e8c4e71.tar.gz
ports-311264a24fd8c37f9ac75b7d73c911f61e8c4e71.zip
Update to 3.8.0.
Only verified on i386 and amd64 FreeBSD 7BETA. Discussions with: bf <bf2006a@yahoo.com>, truckman and Tijl Coosemans <tijl@ulyssis.org>. PR: 118270 and 118271
Notes
Notes: svn path=/head/; revision=204153
Diffstat (limited to 'math/atlas')
-rw-r--r--math/atlas/Makefile250
-rw-r--r--math/atlas/distinfo6
-rw-r--r--math/atlas/files/Makefile.test24
-rw-r--r--math/atlas/files/blas.h857
-rw-r--r--math/atlas/files/lapack.h5085
-rw-r--r--math/atlas/files/patch-ATL_cmmJIK.c14
-rw-r--r--math/atlas/files/patch-ATL_dmm4x4x8_US.c14
-rw-r--r--math/atlas/files/patch-CONFIG+src+SpewMakeInc.c21
-rw-r--r--math/atlas/files/patch-CONFIG+src+atlcomp.txt119
-rw-r--r--math/atlas/files/patch-CONFIG+src+backend+archinfo_freebsd.c75
-rw-r--r--math/atlas/files/patch-CONFIG+src+backend+archinfo_x86.c10
-rw-r--r--math/atlas/files/patch-Make.top13
-rw-r--r--math/atlas/files/patch-USIII.flg27
-rw-r--r--math/atlas/files/patch-config.c197
-rw-r--r--math/atlas/files/patch-ilaenv.f220
-rw-r--r--math/atlas/files/patch-mmsearch.c16
-rw-r--r--math/atlas/files/patch-tfc.c13
-rw-r--r--math/atlas/files/patch-tune+sysinfo+L1CacheSize.c10
-rw-r--r--math/atlas/files/thread-patch23
-rw-r--r--math/atlas/files/timing_tolerance-patch12
-rw-r--r--math/atlas/pkg-descr26
-rw-r--r--math/atlas/pkg-plist73
22 files changed, 416 insertions, 6689 deletions
diff --git a/math/atlas/Makefile b/math/atlas/Makefile
index e8d487c94226..1979b5c394d2 100644
--- a/math/atlas/Makefile
+++ b/math/atlas/Makefile
@@ -5,12 +5,8 @@
# $FreeBSD$
#
-# NOTE: This port purposely ignores the CC and CFLAGS settings.
-# Program and compiler flags are finetuned to gcc.
-
PORTNAME= atlas
-PORTVERSION= 3.6.0
-PORTREVISION= 4
+PORTVERSION= 3.8.0
PORTEPOCH= 1
CATEGORIES= math
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
@@ -29,112 +25,137 @@ USE_LDCONFIG= yes
.include <bsd.port.pre.mk>
+NOT_FOR_ARCHS= alpha
+
USE_FORTRAN= yes
CCOMPILER= ${CC}
LIB_DEPENDS+= blas.2:${PORTSDIR}/math/blas
LIB_DEPENDS+= lapack.4:${PORTSDIR}/math/lapack
-LIB_DEPENDS+= f2c:${PORTSDIR}/lang/f2c
-# only affects for lapack sub project
-.if defined(WITH_OPTIMIZED_FLAGS)
-.if defined(CPUTYPE)
-FFLAGS+= -mtune=${CPUTYPE} -pipe -O2 -ffast-math
+.if ${ARCH} == "sparc64"
+PICFLAG?= -fPIC
.else
-FFLAGS+= -pipe -O2 -ffast-math
-.endif
+PICFLAG?= -fpic
.endif
-post-patch:
-.if !defined(WITH_OPTIMIZED_FLAGS)
- @${ECHO_CMD} "You can optimize lapack sub project by setting WITH_OPTIMIZED_FLAGS=yes."
+.if ${ARCH} == "i386"
+POINTER= 32
.endif
- @${REINPLACE_CMD} -e 's+%%PTHREAD_CFLAGS%%+${PTHREAD_CFLAGS}+g' \
- -e 's+%%PTHREAD_LIBS%%+${PTHREAD_LIBS}+g' \
- -e 's+%%LOCALBASE%%+${LOCALBASE}+g' \
- ${WRKSRC}/config.c
-.if defined(PORTS_ARCH)
- @${REINPLACE_CMD} -e 's+%%PORTS_ARCH%%+${PORTS_ARCH}+g' \
- -e 's+%%HAVE_ARCH%%+1+g' ${WRKSRC}/config.c
-.else
- @${REINPLACE_CMD} -e 's+%%PORTS_ARCH%%+0+g' \
- -e 's+%%HAVE_ARCH%%+0+g' ${WRKSRC}/config.c
+.if ${ARCH} == "amd64"
+POINTER= 64
.endif
-.if (${ARCH} == "alpha")
-EXTRA_PATCHES+= ${FILESDIR}/alpha-patch
+.if ${ARCH} == "sparc64"
+POINTER= 64
.endif
-.if ${ARCH} == "sparc64"
-PICFLAG?= -fPIC
+.if (${OSVERSION} < 700000) && defined(WITH_GCC42KERNEL)
+BUILD_DEPENDS+= gcc42:${PORTSDIR}/lang/gcc42
+KERNELFLAG= -Ss kern gcc42
.else
-PICFLAG?= -fpic
+KERNELFLAG= ""
.endif
-ANSWER_i386?= ${PRINTF} "\n\n\n\n\n\n\n\n\n\n"
-ANSWER_ia64?= ${PRINTF} "\n\n\n2\n\n\n\n\nf77\n-O2 -static\n\n"
-
-.if defined(PACKAGE_BUILDING) && (${ARCH} == "i386")
-PORTS_ARCH=IntP5
+.if defined(WITH_WALL_TIMER)
+. if defined(MHZ) && ( ${ARCH} == "i386" || ${ARCH} == "amd64" )
+TIMEFLAG= -D c -DPentiumCPS=${MHZ}
+. else
+TIMEFLAG= -D c -DWALL
+. endif
+.else
+TIMEFLAG= ""
.endif
-.if !defined(ANSWER_${ARCH})
-ANSWER= ${ANSWER_i386}
+# only used for lapack sub-project
+.if defined(WITH_OPTIMIZED_FLAGS)
+.if defined(CPUTYPE)
+FFLAGS+= -march=${CPUTYPE} -pipe -O2 -ffast-math
.else
-ANSWER= ${ANSWER_${ARCH}}
+FFLAGS+= -pipe -O2 -ffast-math
.endif
-
-.if defined(TIMING_TOLERANCE)
-EXTRA_PATCHES+= ${FILESDIR}/timing_tolerance-patch
.endif
-
.if defined(WITH_STATICLIB)
PLIST_SUB+= WITH_STATICLIB=""
.else
PLIST_SUB+= WITH_STATICLIB="@comment "
.endif
-pre-configure:
- @${ECHO_MSG} "Warning:"
- @${ECHO_MSG} "Building this port can take long time"
- @${ECHO_MSG} "for slow computers (over 1 day)."
- @${ECHO_MSG} "And sometimes stop building for Athlon."
- @${ECHO_MSG} "In this case please retype make or rebuild whole atlas."
+post-extract:
+ @${ECHO_MSG} 'This port engages in a long, computationally-demanding tuning process.'
+ @${ECHO_MSG} 'Builds can take a day or more on older hardware, and temporarily occupy'
+ @${ECHO_MSG} 'several hundred megabytes of disk space. You are advised to disable'
+ @${ECHO_MSG} 'all forms of power management or CPU throttling (APM, ACPI, Intel'
+ @${ECHO_MSG} 'SpeedStep, AMD PowerNow, AMD Cool and Quiet, p4tcc, powerd, etc.)'
+ @${ECHO_MSG} 'that may change the disk I/O or CPU behavior during the build, and'
+ @${ECHO_MSG} 'to set operating parameters to static values at which you ultimately'
+ @${ECHO_MSG} 'intend to use the software. You should also avoid placing heavy loads'
+ @${ECHO_MSG} 'on the system during the build, and temporarily disable any automatons'
+ @${ECHO_MSG} 'that may do so. If you fail to follow these guidelines, you may prolong'
+ @${ECHO_MSG} 'the build, perhaps indefinitely, and you may obtain libraries with'
+ @${ECHO_MSG} 'sub-optimal performance.'
@${ECHO_MSG}
-.if !defined(PORTS_ARCH)
- @${ECHO_MSG} "Warning:"
- @${ECHO_MSG} "If your arch is not correctly detected, you can specify"
- @${ECHO_MSG} "by yourself."
- @${ECHO_MSG} "for example : make PORTS_ARCH=P5Int"
- @${ECHO_MSG} "Available architectures for x86 are:"
- @${ECHO_MSG} "IntP5, IntP5MMX, IntPPRO, IntPII, IntPIII, IntP4, IntP4E"
- @${ECHO_MSG} "IntP4E64, TMEff, AmdAthlon,AmdHammer32, AmdHammer64"
+ @${ECHO_MSG} 'Occasionally the autoconfiguration may fail for certain platforms, and'
+ @${ECHO_MSG} 'you may have to override the architecture, compiler flags, assembly'
+ @${ECHO_MSG} 'language dialect, or pointer bit-width by issuing additional configure'
+ @${ECHO_MSG} 'arguments. Consult the FAQ, installation guide, and errata page at'
+ @${ECHO_MSG} 'the project website for help if this is necessary, and notify the'
+ @${ECHO_MSG} 'port maintainer.'
@${ECHO_MSG}
-.endif
-.if !defined(TIMING_TOLERANCE)
- @${ECHO_MSG} "If your install dies with unable to get timings in tolerance"
- @${ECHO_MSG} "First please refer http://math-atlas.sourceforge.net/errata.html#tol"
- @${ECHO_MSG} "and you can build with"
- @${ECHO_MSG} "make clean; make -DTIMING_TOLERANCE"
- @${ECHO_MSG} "if your build still dies, you can type make again, (and again...)"
+ @${ECHO_MSG} "This port purposely ignores the CC and CFLAGS settings"
+ @${ECHO_MSG} "Program and compiler flags are fine-tuned to the gcc 4.2.x"
+ @${ECHO_MSG} "compiler, although other gcc versions may be used; gcc 4.1.x"
+ @${ECHO_MSG} "is NOT recommended"
@${ECHO_MSG}
-.endif
.if !defined(WITH_STATICLIB)
@${ECHO_MSG} "You can build static libraries with"
@${ECHO_MSG} "make -DWITH_STATICLIB"
@${ECHO_MSG}
.endif
+.if !defined(WITH_WALL_TIMER)
+ @${ECHO_MSG} "If your machine will be solely dedicated to"
+ @${ECHO_MSG} "building atlas with gcc during the lengthy optimization"
+ @${ECHO_MSG} "process, and not subjected to other loads, you"
+ @${ECHO_MSG} "may enable the more accurate wall timer (instead of"
+ @${ECHO_MSG} "the default CPU-time timer) with make -DWITH_WALL_TIMER"
+ @${ECHO_MSG} "If, in addition, you are on i386 or amd64, you may set MHZ"
+ @${ECHO_MSG} "to your CPU clock frequency in MHz (rounded to the nearest"
+ @${ECHO_MSG} "integer value) in the build environment for cycle-to-time"
+ @${ECHO_MSG} "conversion"
+ @${ECHO_MSG}
+.endif
+.if (${OSVERSION} < 700000)
+.if !defined(WITH_GCC42KERNEL)
+ @${ECHO_MSG} "If you don't want to make gcc 4.2.x your default compiler (CC),"
+ @${ECHO_MSG} "but you want to have ATLAS use it to compile all the kernel"
+ @${ECHO_MSG} "routines (this usually results in superior performance, and a"
+ @${ECHO_MSG} "slightly faster build), while compiling interface routines and"
+ @${ECHO_MSG} "doing any linking with gcc 3.x, make a hybrid build with"
+ @${ECHO_MSG} "make -DWITH_GCC42KERNEL"
+ @${ECHO_MSG}
+.endif
+.endif
+
+pre-configure:
+ @${REINPLACE_CMD} -e "s|%%CC%%|${CCOMPILER}|g" \
+ -e "s|%%FC%%|${FC}|g" ${WRKSRC}/CONFIG/src/atlcomp.txt
+ @${REINPLACE_CMD} -e "s|%%PTHREAD_LIBS%%|${PTHREAD_LIBS}|g" \
+ -e "s|%%PTHREAD_CFLAGS%%|${PTHREAD_CFLAGS}|g" \
+ -e "s|%%LOCALBASE%%|${LOCALBASE}|g" \
+ ${WRKSRC}/CONFIG/src/SpewMakeInc.c
do-configure:
- @(cd ${WRKSRC}; ${MAKE_ENV} ${MAKE} xconfig && \
- ${ANSWER} | ./xconfig -N 1 -c ${CCOMPILER} -f ${FC} -m ${CCOMPILER} -g ${CCOMPILER} -x ${CCOMPILER} -a NON_THREADED && \
- ${ANSWER} | ./xconfig -N 1 -c ${CCOMPILER} -f ${FC} -m ${CCOMPILER} -g ${CCOMPILER} -x ${CCOMPILER} -a NON_THREADED_PIC -C '${PICFLAG} -DPIC' -F f '${PICFLAG} -DPIC -O' )
- @(cd ${WRKSRC}; ${PATCH} < ${FILESDIR}/thread-patch && \
- ${MAKE_ENV} ${MAKE} xconfig && \
- ${ANSWER} | ./xconfig -c ${CCOMPILER} -f ${FC} -m ${CCOMPILER} -g ${CCOMPILER} -x ${CCOMPILER} -a THREADED && \
- ${ANSWER} | ./xconfig -c ${CCOMPILER} -f ${FC} -m ${CCOMPILER} -g ${CCOMPILER} -x ${CCOMPILER} -a THREADED_PIC -C '${PICFLAG} -DPIC' -F f '${PICFLAG} -DPIC -O' )
-
-ATLAS_LIBS1=libalapack libatlas libcblas libf77blas libtstatlas
-ATLAS_LIBS2=libptcblas libptf77blas
-LAPACKWRKSRC=`cd ${WRKDIR}/lapack; ${MAKE} -V WRKSRC`
+#non-threaded
+#dummy f77lib, it is not used.
+ ${MKDIR} ${WRKSRC}/NON_THREADED ; cd ${WRKSRC}/NON_THREADED ; \
+ ../configure -v 2 -t 0 ${TIMEFLAG} -b ${POINTER} -Si cputhrchk 0 ${KERNELFLAG} -Ss f77lib " "
+ ${MKDIR} ${WRKSRC}/NON_THREADED_PIC ; cd ${WRKSRC}/NON_THREADED_PIC ; \
+ ../configure -v 2 -t 0 -b ${POINTER} -Fa alg '${PICFLAG} -DPIC' ${TIMEFLAG} -Si cputhrchk 0 ${KERNELFLAG} -Ss f77lib " "
+#threaded
+#dummy f77lib, it is not used.
+ cd ${WRKSRC}; ${PATCH} < ${FILESDIR}/thread-patch
+ ${MKDIR} ${WRKSRC}/THREADED ; cd ${WRKSRC}/THREADED ; \
+ ../configure -v 2 -b ${POINTER} -Fa alg '${PTHREAD_CFLAGS} ' ${TIMEFLAG} -Si cputhrchk 0 ${KERNELFLAG} -Ss f77lib " "
+ ${MKDIR} ${WRKSRC}/THREADED_PIC ; cd ${WRKSRC}/THREADED_PIC ; \
+ ../configure -v 2 -b ${POINTER} -Fa alg '${PTHREAD_CFLAGS} ${PICFLAG} -DPIC' ${TIMEFLAG} -Si cputhrchk 0 ${KERNELFLAG} -Ss f77lib " "
do-build:
# make lapack
@@ -147,102 +168,99 @@ do-build:
@${CP} ${PORTSDIR}/math/lapack/pkg-descr ${WRKDIR}/lapack
@cd ${WRKDIR}/lapack ; ${MAKE} "FFLAGS=${FFLAGS}" FC="${FC}" build WRKDIRPREFIX=""
.endif
- @(cd ${WRKSRC}; ${MAKE} ${.MAKEFLAGS} "ARCH=NON_THREADED_PIC" install arch=NON_THREADED_PIC)
- @(cd ${WRKSRC}; ${MAKE} ${.MAKEFLAGS} "ARCH=THREADED_PIC" install arch=THREADED_PIC)
.if defined(WITH_STATICLIB)
- @(cd ${WRKSRC}; ${MAKE} ${.MAKEFLAGS} "ARCH=NON_THREADED" install arch=NON_THREADED)
- @(cd ${WRKSRC}; ${MAKE} ${.MAKEFLAGS} "ARCH=THREADED" install arch=THREADED)
+ (cd ${WRKSRC}/NON_THREADED ; ${MAKE})
+ (cd ${WRKSRC}/THREADED ; ${MAKE})
.endif
- @${MAKE} test
+ (cd ${WRKSRC}/NON_THREADED_PIC ; ${MAKE})
+ (cd ${WRKSRC}/THREADED_PIC ; ${MAKE})
+test:
+ @${MAKE} do-test
+
+ATLAS_LIBS1=libalapack libatlas libcblas libf77blas #libtstatlas
+ATLAS_LIBS2=libptcblas libptf77blas
+LAPACKWRKSRC=`cd ${WRKDIR}/lapack; ${MAKE} -V WRKSRC WRKDIRPREFIX=""`
post-build:
.if defined(WITH_STATICLIB)
-# make atlas enhanced lapack (static ver)
+# make atlas-enhanced lapack (static ver)
(cd ${WRKSRC}; ${MKDIR} tmp1 ; \
${CP} ${LAPACKWRKSRC}/liblapack.a tmp1 ;\
cd tmp1 ;\
ar x liblapack.a ;\
- ar x ../lib/NON_THREADED/liblapack.a ;\
- ar r ../lib/NON_THREADED/libalapack.a *.o ;\
- ranlib ../lib/NON_THREADED/libalapack.a )
-# make atlas enhanced lapack (static and thread safe ver)
+ ar x ../NON_THREADED/lib/liblapack.a ;\
+ ar r ../NON_THREADED/lib/libalapack.a *.o ;\
+ ranlib ../NON_THREADED/lib/libalapack.a )
+# make atlas-enhanced lapack (static and thread-safe ver)
(cd ${WRKSRC}; ${MKDIR} tmp2 ; \
${CP} ${LAPACKWRKSRC}/liblapack.a tmp2 ;\
cd tmp2 ;\
ar x liblapack.a ;\
- ar x ../lib/THREADED/liblapack.a ;\
- ar r ../lib/THREADED/libalapack.a *.o ;\
- ranlib ../lib/THREADED/libalapack.a )
+ ar x ../THREADED/lib/liblapack.a ;\
+ ar r ../THREADED/lib/libalapack.a *.o ;\
+ ranlib ../THREADED/lib/libalapack.a )
.endif
-# make atlas enhanced lapack (shared ver)
+# make atlas-enhanced lapack (shared ver)
( cd ${WRKSRC}; ${MKDIR} tmp3 ;\
${CP} ${LAPACKWRKSRC}_shared/liblapack.a tmp3 ;\
cd tmp3 ;\
ar x liblapack.a ;\
- ar x ../lib/NON_THREADED_PIC/liblapack.a ;\
- ar r ../lib/NON_THREADED_PIC/libalapack.a *.o ;\
- ranlib ../lib/NON_THREADED_PIC/libalapack.a )
-# make atlas enhanced lapack (shared and thread safe ver)
+ ar x ../NON_THREADED_PIC/lib/liblapack.a ;\
+ ar r ../NON_THREADED_PIC/lib/libalapack.a *.o ;\
+ ranlib ../NON_THREADED_PIC/lib/libalapack.a )
+# make atlas-enhanced lapack (shared and thread-safe ver)
( cd ${WRKSRC}; ${MKDIR} tmp4 ;\
${CP} ${LAPACKWRKSRC}_shared/liblapack.a tmp4 ;\
cd tmp4 ;\
ar x liblapack.a ;\
- ar x ../lib/THREADED_PIC/liblapack.a ;\
- ar r ../lib/THREADED_PIC/libalapack.a *.o ;\
- ranlib ../lib/THREADED_PIC/libalapack.a )
+ ar x ../THREADED_PIC/lib/liblapack.a ;\
+ ar r ../THREADED_PIC/lib/libalapack.a *.o ;\
+ ranlib ../THREADED_PIC/lib/libalapack.a )
# make atlas shared library
.for i in ${ATLAS_LIBS1}
- ( cd ${WRKSRC}/lib/NON_THREADED_PIC/ ; \
+ ( cd ${WRKSRC}/NON_THREADED_PIC/lib ; \
ld -Bshareable -o ${i}.so.2 -x -soname ${i}.so.2 --whole-archive ${i}.a )
.endfor
-# make atlas shared (thread safe) library
+# make atlas shared (thread-safe) library
.for i in ${ATLAS_LIBS1}
- ( cd ${WRKSRC}/lib/THREADED_PIC/ ; \
+ ( cd ${WRKSRC}/THREADED_PIC/lib ; \
ld -Bshareable -o ${i}_r.so.2 -x -soname ${i}_r.so.2 --whole-archive ${i}.a )
.endfor
.for i in ${ATLAS_LIBS2}
- ( cd ${WRKSRC}/lib/THREADED_PIC/ ; \
+ ( cd ${WRKSRC}/THREADED_PIC/lib ; \
ld -Bshareable -o ${i}.so.2 -x -soname ${i}.so.2 --whole-archive ${i}.a )
.endfor
-
do-install:
.for i in ${ATLAS_LIBS1}
.if defined(WITH_STATICLIB)
- @${INSTALL_DATA} ${WRKSRC}/lib/NON_THREADED/${i}.a ${PREFIX}/lib
+ @${INSTALL_DATA} ${WRKSRC}/NON_THREADED/lib/${i}.a ${PREFIX}/lib
.endif
- @${INSTALL_DATA} ${WRKSRC}/lib/NON_THREADED_PIC/${i}.so.2 ${PREFIX}/lib
+ @${INSTALL_DATA} ${WRKSRC}/NON_THREADED_PIC/lib/${i}.so.2 ${PREFIX}/lib
@${LN} -sf ${i}.so.2 ${PREFIX}/lib/${i}.so
.endfor
.for i in ${ATLAS_LIBS1}
.if defined(WITH_STATICLIB)
- @${INSTALL_DATA} ${WRKSRC}/lib/THREADED/${i}.a ${PREFIX}/lib/${i}_r.a
+ @${INSTALL_DATA} ${WRKSRC}/THREADED/lib/${i}.a ${PREFIX}/lib/${i}_r.a
.endif
- @${INSTALL_DATA} ${WRKSRC}/lib/THREADED_PIC/${i}_r.so.2 ${PREFIX}/lib/${i}_r.so.2
+ @${INSTALL_DATA} ${WRKSRC}/THREADED_PIC/lib/${i}_r.so.2 ${PREFIX}/lib/${i}_r.so.2
@${LN} -sf ${i}_r.so.2 ${PREFIX}/lib/${i}_r.so
.endfor
.for i in ${ATLAS_LIBS2}
.if defined(WITH_STATICLIB)
- @${INSTALL_DATA} ${WRKSRC}/lib/THREADED/${i}.a ${PREFIX}/lib
+ @${INSTALL_DATA} ${WRKSRC}/THREADED/lib/${i}.a ${PREFIX}/lib
.endif
- @${INSTALL_DATA} ${WRKSRC}/lib/THREADED_PIC/${i}.so.2 ${PREFIX}/lib
+ @${INSTALL_DATA} ${WRKSRC}/THREADED_PIC/lib/${i}.so.2 ${PREFIX}/lib
@${LN} -sf ${i}.so.2 ${PREFIX}/lib/${i}.so
.endfor
+
@${INSTALL_DATA} ${WRKSRC}/include/cblas.h ${PREFIX}/include
@${INSTALL_DATA} ${WRKSRC}/include/clapack.h ${PREFIX}/include
- @${INSTALL_DATA} ${FILESDIR}/blas.h ${PREFIX}/include
- @${INSTALL_DATA} ${FILESDIR}/lapack.h ${PREFIX}/include
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/doc/* ${DOCSDIR}
.endif
- ${MKDIR} ${EXAMPLESDIR}
- @for i in ${ALLTESTS} ; do \
- cd ${WRKDIR}/ATLAS/bin/NON_THREADED_PIC ; ${INSTALL_PROGRAM} $${i} ${EXAMPLESDIR} ; \
- done
- @for i in ${ALLTESTS_PT} ; do \
- cd ${WRKDIR}/ATLAS/bin/THREADED_PIC ; ${INSTALL_PROGRAM} $${i} ${EXAMPLESDIR} ; \
- done
+
.include <${FILESDIR}/Makefile.test>
.include <bsd.port.post.mk>
diff --git a/math/atlas/distinfo b/math/atlas/distinfo
index 3d269b2db6b9..3d44c165dd5b 100644
--- a/math/atlas/distinfo
+++ b/math/atlas/distinfo
@@ -1,3 +1,3 @@
-MD5 (atlas3.6.0.tar.bz2) = df2ee2eb65d1c08ee93d04370172c262
-SHA256 (atlas3.6.0.tar.bz2) = 1c2ad68fe3c66e261c012788fc1b6f74eada791f713848a3a6420c50fa35c8e8
-SIZE (atlas3.6.0.tar.bz2) = 1687723
+MD5 (atlas3.8.0.tar.bz2) = fd42a00f36243bf4815d035b226ec305
+SHA256 (atlas3.8.0.tar.bz2) = e9131d8ffd2dfdd12312676e38183ca45a52547fad5498e46f90c95954bf121c
+SIZE (atlas3.8.0.tar.bz2) = 2463051
diff --git a/math/atlas/files/Makefile.test b/math/atlas/files/Makefile.test
index 590300e4277d..1eaae571f323 100644
--- a/math/atlas/files/Makefile.test
+++ b/math/atlas/files/Makefile.test
@@ -9,26 +9,26 @@ ALLTESTS_PT = xsl3blastst_pt xdl3blastst_pt xcl3blastst_pt xzl3blastst_pt \
xslutst_pt xslutstF_pt xdlutst_pt xdlutstF_pt xclutst_pt xclutstF_pt \
xzlutst_pt xzlutstF_pt xsllttst_pt xsllttstF_pt xdllttst_pt \
xdllttstF_pt xcllttst_pt xcllttstF_pt xzllttst_pt xzllttstF_pt
-#builderrors?
-# xsl1blastst_pt xdl1blastst_pt xcl1blastst_pt xzl1blastst_pt \
+#build errors?
# xsl2blastst_pt xdl2blastst_pt xcl2blastst_pt xzl2blastst_pt \
-
-test:
- for i in ${ALLTESTS} ; do \
+# xsl1blastst_pt xdl1blastst_pt xcl1blastst_pt xzl1blastst_pt \
+#Failed tests
+do-test:
+ @for i in ${ALLTESTS} ; do \
${ECHO_CMD} "Making $${i}" ; \
- cd ${WRKDIR}/ATLAS/bin/NON_THREADED_PIC/ ; ${MAKE} ${.MAKEFLAGS} "ARCH=NON_THREADED_PIC" $${i} ; \
+ cd ${WRKDIR}/ATLAS/NON_THREADED_PIC/bin ; ${MAKE} $${i} ; \
done
- for i in ${ALLTESTS_PT} ; do \
+ @for i in ${ALLTESTS_PT} ; do \
${ECHO_CMD} "Making $${i}" ; \
- cd ${WRKDIR}/ATLAS/bin/THREADED_PIC ; ${MAKE} ${.MAKEFLAGS} "ARCH=THREADED_PIC" $${i} ; \
+ cd ${WRKDIR}/ATLAS/THREADED_PIC/bin ; ${MAKE} $${i} ; \
done
- for i in ${ALLTESTS} ; do \
+ @for i in ${ALLTESTS} ; do \
${ECHO_CMD} "Benchmarking $${i}" ; \
- cd ${WRKDIR}/ATLAS/bin/NON_THREADED_PIC ; ./$${i} ; \
+ cd ${WRKDIR}/ATLAS/NON_THREADED_PIC/bin ; ./$${i} ; \
done
- for i in ${ALLTESTS_PT} ; do \
+ @for i in ${ALLTESTS_PT} ; do \
${ECHO_CMD} "Benchmarking $${i}" ; \
- cd ${WRKDIR}/ATLAS/bin/THREADED_PIC ; ./$${i} ; \
+ cd ${WRKDIR}/ATLAS/THREADED_PIC/bin ; ./$${i} ; \
done
diff --git a/math/atlas/files/blas.h b/math/atlas/files/blas.h
deleted file mode 100644
index 774fbaefd0d1..000000000000
--- a/math/atlas/files/blas.h
+++ /dev/null
@@ -1,857 +0,0 @@
-// blas prototypes file for C++
-// based on BLAS/WRAP/fblaswr.h
-// in clapack.tgz, version 3.0(September 20, 2000)
-// available at http://www.netlib.org/clapack/
-// and modified by Nakata Maho <maho@FreeBSD.org>
-// for C++, which requires proper prototype definitions.
-
-extern "C"
-{
-#include <f2c.h>
-
-real
-sdot_(integer* N,
- real* X, integer* incX,
- real* Y, integer* incY);
-
-doublereal
-ddot_(integer* N,
- doublereal* X, integer* incX,
- doublereal* Y, integer* incY);
-
-void
-cdotu_(complex* retval,
- integer* N,
- complex* X, integer* incX,
- complex* Y, integer* incY);
-
-void
-cdotc_(complex* retval,
- integer* N,
- complex* X, integer* incX,
- complex* Y, integer* incY);
-
-void
-zdotu_(doublecomplex* retval,
- integer* N,
- doublecomplex* X, integer* incX,
- doublecomplex* Y, integer* incY);
-
-void
-zdotc_(doublecomplex* retval,
- integer* N,
- doublecomplex* X, integer* incX,
- doublecomplex* Y, integer* incY);
-
-real
-snrm2_(integer* N,
- real* X, integer* incX);
-
-real
-sasum_(integer* N,
- real* X, integer* incX);
-
-doublereal
-dnrm2_(integer* N,
- doublereal* X, integer* incX);
-
-doublereal
-dasum_(integer* N,
- doublereal* X, integer* incX);
-
-real
-scnrm2_(integer* N,
- complex* X, integer* incX);
-
-real
-scasum_(integer* N,
- complex* X, integer* incX);
-
-doublereal
-dznrm2_(integer* N,
- doublecomplex* X, integer* incX);
-
-doublereal
-dzasum_(integer* N,
- doublecomplex* X, integer* incX);
-
-integer
-isamax_(integer* N,
- real* X, integer* incX);
-
-integer
-idamax_(integer* N,
- doublereal* X, integer* incX);
-
-integer
-icamax_(integer* N,
- complex* X, integer* incX);
-
-integer
-izamax_(integer* N,
- doublecomplex* X, integer* incX);
-
-int
-sswap_(integer* N,
- real* X, integer* incX,
- real* Y, integer* incY);
-
-int
-scopy_(integer* N,
- real* X, integer* incX,
- real* Y, integer* incY);
-
-int
-saxpy_(integer* N,
- real* alpha,
- real* X, integer* incX,
- real* Y, integer* incY);
-
-int
-dswap_(integer* N,
- doublereal* X, integer* incX,
- doublereal* Y, integer* incY);
-
-int
-dcopy_(integer* N,
- doublereal* X, integer* incX,
- doublereal* Y, integer* incY);
-
-int
-daxpy_(integer* N,
- doublereal* alpha,
- doublereal* X, integer* incX,
- doublereal* Y, integer* incY);
-
-int
-cswap_(integer* N,
- complex* X, integer* incX,
- complex* Y, integer* incY);
-
-int
-ccopy_(integer* N,
- complex* X, integer* incX,
- complex* Y, integer* incY);
-
-int
-caxpy_(integer* N,
- complex* alpha,
- complex* X, integer* incX,
- complex* Y, integer* incY);
-
-int
-zswap_(integer* N,
- doublecomplex* X, integer* incX,
- doublecomplex* Y, integer* incY);
-
-int
-zcopy_(integer* N,
- doublecomplex* X, integer* incX,
- doublecomplex* Y, integer* incY);
-
-int
-zaxpy_(integer* N,
- doublecomplex* alpha,
- doublecomplex* X, integer* incX,
- doublecomplex* Y, integer* incY);
-
-int
-srotg_(real* a, real* b, real* c, real* s);
-
-int
-srot_(integer* N,
- real* X, integer* incX,
- real* Y, integer* incY,
- real* c, real* s);
-
-int
-drotg_(doublereal* a, doublereal* b, doublereal* c, doublereal* s);
-
-int
-drot_(integer* N,
- doublereal* X, integer* incX,
- doublereal* Y, integer* incY,
- doublereal* c, doublereal* s);
-
-int
-sscal_(integer* N,
- real* alpha,
- real* X, integer* incX);
-
-int
-dscal_(integer* N,
- doublereal* alpha,
- doublereal* X, integer* incX);
-
-int
-cscal_(integer* N,
- complex* alpha,
- complex* X, integer* incX);
-
-int
-zscal_(integer* N,
- doublecomplex* alpha,
- doublecomplex* X, integer* incX);
-
-int
-csscal_(integer* N,
- real* alpha,
- complex* X, integer* incX);
-
-int
-zdscal_(integer* N,
- doublereal* alpha,
- doublecomplex* X, integer* incX);
-
-int
-sgemv_(char* trans, integer* M, integer* N,
- real* alpha,
- real* A, integer* lda,
- real* X, integer* incX,
- real* beta,
- real* Y, integer* incY);
-
-int
-sgbmv_(char *trans, integer *M, integer *N, integer *KL, integer *KU,
- real *alpha,
- real *A, integer *lda,
- real *X, integer *incX,
- real *beta,
- real *Y, integer *incY);
-
-int
-strmv_(char* uplo, char *trans, char* diag, integer *N,
- real *A, integer *lda,
- real *X, integer *incX);
-
-int
-stbmv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
- real* A, integer* lda,
- real* X, integer* incX);
-
-int
-stpmv_(char* uplo, char* trans, char* diag, integer* N,
- real* Ap,
- real* X, integer* incX);
-
-int
-strsv_(char* uplo, char* trans, char* diag, integer* N,
- real* A, integer* lda,
- real* X, integer* incX);
-
-int
-stbsv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
- real* A, integer* lda,
- real* X, integer* incX);
-
-int
-stpsv_(char* uplo, char* trans, char* diag, integer* N,
- real* Ap,
- real* X, integer* incX);
-
-int
-dgemv_(char* trans, integer* M, integer* N,
- doublereal* alpha,
- doublereal* A, integer* lda,
- doublereal* X, integer* incX,
- doublereal* beta,
- doublereal* Y, integer* incY);
-
-int
-dgbmv_(char *trans, integer *M, integer *N, integer *KL, integer *KU,
- doublereal *alpha,
- doublereal *A, integer *lda,
- doublereal *X, integer *incX,
- doublereal *beta,
- doublereal *Y, integer *incY);
-
-int
-dtrmv_(char* uplo, char *trans, char* diag, integer *N,
- doublereal *A, integer *lda,
- doublereal *X, integer *incX);
-
-int
-dtbmv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
- doublereal* A, integer* lda,
- doublereal* X, integer* incX);
-
-int
-dtpmv_(char* uplo, char* trans, char* diag, integer* N,
- doublereal* Ap,
- doublereal* X, integer* incX);
-
-int
-dtrsv_(char* uplo, char* trans, char* diag, integer* N,
- doublereal* A, integer* lda,
- doublereal* X, integer* incX);
-
-int
-dtbsv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
- doublereal* A, integer* lda,
- doublereal* X, integer* incX);
-
-int
-dtpsv_(char* uplo, char* trans, char* diag, integer* N,
- doublereal* Ap,
- doublereal* X, integer* incX);
-
-int
-cgemv_(char* trans, integer* M, integer* N,
- complex* alpha,
- complex* A, integer* lda,
- complex* X, integer* incX,
- complex* beta,
- complex* Y, integer* incY);
-
-int
-cgbmv_(char *trans, integer *M, integer *N, integer *KL, integer *KU,
- complex *alpha,
- complex *A, integer *lda,
- complex *X, integer *incX,
- complex *beta,
- complex *Y, integer *incY);
-
-int
-ctrmv_(char* uplo, char *trans, char* diag, integer *N,
- complex *A, integer *lda,
- complex *X, integer *incX);
-
-int
-ctbmv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
- complex* A, integer* lda,
- complex* X, integer* incX);
-
-int
-ctpmv_(char* uplo, char* trans, char* diag, integer* N,
- complex* Ap,
- complex* X, integer* incX);
-
-int
-ctrsv_(char* uplo, char* trans, char* diag, integer* N,
- complex* A, integer* lda,
- complex* X, integer* incX);
-
-int
-ctbsv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
- complex* A, integer* lda,
- complex* X, integer* incX);
-
-int
-ctpsv_(char* uplo, char* trans, char* diag, integer* N,
- complex* Ap,
- complex* X, integer* incX);
-
-int
-zgemv_(char* trans, integer* M, integer* N,
- doublecomplex* alpha,
- doublecomplex* A, integer* lda,
- doublecomplex* X, integer* incX,
- doublecomplex* beta,
- doublecomplex* Y, integer* incY);
-
-int
-zgbmv_(char *trans, integer *M, integer *N, integer *KL, integer *KU,
- doublecomplex *alpha,
- doublecomplex *A, integer *lda,
- doublecomplex *X, integer *incX,
- doublecomplex *beta,
- doublecomplex *Y, integer *incY);
-
-int
-ztrmv_(char* uplo, char *trans, char* diag, integer *N,
- doublecomplex *A, integer *lda,
- doublecomplex *X, integer *incX);
-
-int
-ztbmv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
- doublecomplex* A, integer* lda,
- doublecomplex* X, integer* incX);
-
- void
-ztpmv_(char* uplo, char* trans, char* diag, integer* N,
- doublecomplex* Ap,
- doublecomplex* X, integer* incX);
-
-int
-ztrsv_(char* uplo, char* trans, char* diag, integer* N,
- doublecomplex* A, integer* lda,
- doublecomplex* X, integer* incX);
-
-int
-ztbsv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
- doublecomplex* A, integer* lda,
- doublecomplex* X, integer* incX);
-
-int
-ztpsv_(char* uplo, char* trans, char* diag, integer* N,
- doublecomplex* Ap,
- doublecomplex* X, integer* incX);
-
-int
-ssymv_(char* uplo, integer* N,
- real* alpha,
- real* A, integer* lda,
- real* X, integer* incX,
- real* beta,
- real* Y, integer* incY);
-
-int
-ssbmv_(char* uplo, integer* N, integer* K,
- real* alpha,
- real* A, integer* lda,
- real* X, integer* incX,
- real* beta,
- real* Y, integer* incY);
-
-int
-sspmv_(char* uplo, integer* N,
- real* alpha,
- real* Ap,
- real* X, integer* incX,
- real* beta,
- real* Y, integer* incY);
-
-int
-sger_(integer* M, integer* N,
- real* alpha,
- real* X, integer* incX,
- real* Y, integer* incY,
- real* A, integer* lda);
-
-int
-ssyr_(char* uplo, integer* N,
- real* alpha,
- real* X, integer* incX,
- real* A, integer* lda);
-
-int
-sspr_(char* uplo, integer* N,
- real* alpha,
- real* X, integer* incX,
- real* Ap);
-
-int
-ssyr2_(char* uplo, integer* N,
- real* alpha,
- real* X, integer* incX,
- real* Y, integer* incY,
- real* A, integer* lda);
-
-int
-sspr2_(char* uplo, integer* N,
- real* alpha,
- real* X, integer* incX,
- real* Y, integer* incY,
- real* A);
-
-int
-dsymv_(char* uplo, integer* N,
- doublereal* alpha,
- doublereal* A, integer* lda,
- doublereal* X, integer* incX,
- doublereal* beta,
- doublereal* Y, integer* incY);
-
-int
-dsbmv_(char* uplo, integer* N, integer* K,
- doublereal* alpha,
- doublereal* A, integer* lda,
- doublereal* X, integer* incX,
- doublereal* beta,
- doublereal* Y, integer* incY);
-
-int
-dspmv_(char* uplo, integer* N,
- doublereal* alpha,
- doublereal* Ap,
- doublereal* X, integer* incX,
- doublereal* beta,
- doublereal* Y, integer* incY);
-
-int
-dger_(integer* M, integer* N,
- doublereal* alpha,
- doublereal* X, integer* incX,
- doublereal* Y, integer* incY,
- doublereal* A, integer* lda);
-
-int
-dsyr_(char* uplo, integer* N,
- doublereal* alpha,
- doublereal* X, integer* incX,
- doublereal* A, integer* lda);
-
-int
-dspr_(char* uplo, integer* N,
- doublereal* alpha,
- doublereal* X, integer* incX,
- doublereal* Ap);
-
-int
-dsyr2_(char* uplo, integer* N,
- doublereal* alpha,
- doublereal* X, integer* incX,
- doublereal* Y, integer* incY,
- doublereal* A, integer* lda);
-
-int
-dspr2_(char* uplo, integer* N,
- doublereal* alpha,
- doublereal* X, integer* incX,
- doublereal* Y, integer* incY,
- doublereal* A);
-
-int
-chemv_(char* uplo, integer* N,
- complex* alpha,
- complex* A, integer* lda,
- complex* X, integer* incX,
- complex* beta,
- complex* Y, integer* incY);
-
-int
-chbmv_(char* uplo, integer* N, integer* K,
- complex* alpha,
- complex* A, integer* lda,
- complex* X, integer* incX,
- complex* beta,
- complex* Y, integer* incY);
-
-int
-chpmv_(char* uplo, integer* N,
- complex* alpha,
- complex* Ap,
- complex* X, integer* incX,
- complex* beta,
- complex* Y, integer* incY);
-
-int
-cgeru_(integer* M, integer* N,
- complex* alpha,
- complex* X, integer* incX,
- complex* Y, integer* incY,
- complex* A, integer* lda);
-
-int
-cgerc_(integer* M, integer* N,
- complex* alpha,
- complex* X, integer* incX,
- complex* Y, integer* incY,
- complex* A, integer* lda);
-
-int
-cher_(char* uplo, integer* N,
- real* alpha,
- complex* X, integer* incX,
- complex* A, integer* lda);
-
-int
-chpr_(char* uplo, integer* N,
- real* alpha,
- complex* X, integer* incX,
- complex* Ap);
-
-int
-cher2_(char* uplo, integer* N,
- complex* alpha,
- complex* X, integer* incX,
- complex* Y, integer* incY,
- complex* A, integer* lda);
-
-int
-chpr2_(char* uplo, integer* N,
- complex* alpha,
- complex* X, integer* incX,
- complex* Y, integer* incY,
- complex* Ap);
-
-int
-zhemv_(char* uplo, integer* N,
- doublecomplex* alpha,
- doublecomplex* A, integer* lda,
- doublecomplex* X, integer* incX,
- doublecomplex* beta,
- doublecomplex* Y, integer* incY);
-
-int
-zhbmv_(char* uplo, integer* N, integer* K,
- doublecomplex* alpha,
- doublecomplex* A, integer* lda,
- doublecomplex* X, integer* incX,
- doublecomplex* beta,
- doublecomplex* Y, integer* incY);
-
-int
-zhpmv_(char* uplo, integer* N,
- doublecomplex* alpha,
- doublecomplex* Ap,
- doublecomplex* X, integer* incX,
- doublecomplex* beta,
- doublecomplex* Y, integer* incY);
-
-int
-zgeru_(integer* M, integer* N,
- doublecomplex* alpha,
- doublecomplex* X, integer* incX,
- doublecomplex* Y, integer* incY,
- doublecomplex* A, integer* lda);
-
-int
-zgerc_(integer* M, integer* N,
- doublecomplex* alpha,
- doublecomplex* X, integer* incX,
- doublecomplex* Y, integer* incY,
- doublecomplex* A, integer* lda);
-
-int
-zher_(char* uplo, integer* N,
- doublereal* alpha,
- doublecomplex* X, integer* incX,
- doublecomplex* A, integer* lda);
-
-int
-zhpr_(char* uplo, integer* N,
- doublereal* alpha,
- doublecomplex* X, integer* incX,
- doublecomplex* Ap);
-
-int
-zher2_(char* uplo, integer* N,
- doublecomplex* alpha,
- doublecomplex* X, integer* incX,
- doublecomplex* Y, integer* incY,
- doublecomplex* A, integer* lda);
-
-int
-zhpr2_(char* uplo, integer* N,
- doublecomplex* alpha,
- doublecomplex* X, integer* incX,
- doublecomplex* Y, integer* incY,
- doublecomplex* Ap);
-
-int
-sgemm_(char* transA, char* transB, integer* M, integer* N, integer* K,
- real* alpha,
- real* A, integer* lda,
- real* B, integer* ldb,
- real* beta,
- real* C, integer* ldc);
-
-int
-ssymm_(char* side, char* uplo, integer* M, integer* N,
- real* alpha,
- real* A, integer* lda,
- real* B, integer* ldb,
- real* beta,
- real* C, integer* ldc);
-
-int
-ssyrk_(char* uplo, char* trans, integer* N, integer* K,
- real* alpha,
- real* A, integer* lda,
- real* beta,
- real* C, integer* ldc);
-
-int
-ssyr2k_(char* uplo, char* trans, integer* N, integer* K,
- real* alpha,
- real* A, integer* lda,
- real* B, integer* ldb,
- real* beta,
- real* C, integer* ldc);
-
-int
-strmm_(char* side, char* uplo, char* trans, char* diag,
- integer* M, integer* N,
- real* alpha,
- real* A, integer* lda,
- real* B, integer* ldb);
-
-int
-strsm_(char* side, char* uplo, char* trans, char* diag,
- integer* M, integer* N,
- real* alpha,
- real* A, integer* lda,
- real* B, integer* ldb);
-
-int
-dgemm_(char* transA, char* transB, integer* M, integer* N, integer* K,
- doublereal* alpha,
- doublereal* A, integer* lda,
- doublereal* B, integer* ldb,
- doublereal* beta,
- doublereal* C, integer* ldc);
-
-int
-dsymm_(char* side, char* uplo, integer* M, integer* N,
- doublereal* alpha,
- doublereal* A, integer* lda,
- doublereal* B, integer* ldb,
- doublereal* beta,
- doublereal* C, integer* ldc);
-
-int
-dsyrk_(char* uplo, char* trans, integer* N, integer* K,
- doublereal* alpha,
- doublereal* A, integer* lda,
- doublereal* beta,
- doublereal* C, integer* ldc);
-
-int
-dsyr2k_(char* uplo, char* trans, integer* N, integer* K,
- doublereal* alpha,
- doublereal* A, integer* lda,
- doublereal* B, integer* ldb,
- doublereal* beta,
- doublereal* C, integer* ldc);
-
-int
-dtrmm_(char* side, char* uplo, char* trans, char* diag,
- integer* M, integer* N,
- doublereal* alpha,
- doublereal* A, integer* lda,
- doublereal* B, integer* ldb);
-
-int
-dtrsm_(char* side, char* uplo, char* trans, char* diag,
- integer* M, integer* N,
- doublereal* alpha,
- doublereal* A, integer* lda,
- doublereal* B, integer* ldb);
-
-int
-cgemm_(char* transA, char* transB, integer* M, integer* N, integer* K,
- complex* alpha,
- complex* A, integer* lda,
- complex* B, integer* ldb,
- complex* beta,
- complex* C, integer* ldc);
-
-int
-csymm_(char* side, char* uplo, integer* M, integer* N,
- complex* alpha,
- complex* A, integer* lda,
- complex* B, integer* ldb,
- complex* beta,
- complex* C, integer* ldc);
-
-int
-csyrk_(char* uplo, char* trans, integer* N, integer* K,
- complex* alpha,
- complex* A, integer* lda,
- complex* beta,
- complex* C, integer* ldc);
-
-int
-csyr2k_(char* uplo, char* trans, integer* N, integer* K,
- complex* alpha,
- complex* A, integer* lda,
- complex* B, integer* ldb,
- complex* beta,
- complex* C, integer* ldc);
-
-int
-ctrmm_(char* side, char* uplo, char* trans, char* diag,
- integer* M, integer* N,
- complex* alpha,
- complex* A, integer* lda,
- complex* B, integer* ldb);
-
-int
-ctrsm_(char* side, char* uplo, char* trans, char* diag,
- integer* M, integer* N,
- complex* alpha,
- complex* A, integer* lda,
- complex* B, integer* ldb);
-
-int
-zgemm_(char* transA, char* transB, integer* M, integer* N, integer* K,
- doublecomplex* alpha,
- doublecomplex* A, integer* lda,
- doublecomplex* B, integer* ldb,
- doublecomplex* beta,
- doublecomplex* C, integer* ldc);
-
-int
-zsymm_(char* side, char* uplo, integer* M, integer* N,
- doublecomplex* alpha,
- doublecomplex* A, integer* lda,
- doublecomplex* B, integer* ldb,
- doublecomplex* beta,
- doublecomplex* C, integer* ldc);
-
-int
-zsyrk_(char* uplo, char* trans, integer* N, integer* K,
- doublecomplex* alpha,
- doublecomplex* A, integer* lda,
- doublecomplex* beta,
- doublecomplex* C, integer* ldc);
-
-int
-zsyr2k_(char* uplo, char* trans, integer* N, integer* K,
- doublecomplex* alpha,
- doublecomplex* A, integer* lda,
- doublecomplex* B, integer* ldb,
- doublecomplex* beta,
- doublecomplex* C, integer* ldc);
-
-int
-ztrmm_(char* side, char* uplo, char* trans, char* diag,
- integer* M, integer* N,
- doublecomplex* alpha,
- doublecomplex* A, integer* lda,
- doublecomplex* B, integer* ldb);
-
-int
-ztrsm_(char* side, char* uplo, char* trans, char* diag,
- integer* M, integer* N,
- doublecomplex* alpha,
- doublecomplex* A, integer* lda,
- doublecomplex* B, integer* ldb);
-
-int
-chemm_(char* side, char* uplo, integer* M, integer* N,
- complex* alpha,
- complex* A, integer* lda,
- complex* B, integer* ldb,
- complex* beta,
- complex* C, integer* ldc);
-
-int
-cherk_(char* uplo, char* trans, integer* N, integer* K,
- real* alpha,
- complex* A, integer* lda,
- real* beta,
- complex* C, integer* ldc);
-
-int
-cher2k_(char* uplo, char* trans, integer* N, integer* K,
- complex* alpha,
- complex* A, integer* lda,
- complex* B, integer* ldb,
- real* beta,
- complex* C, integer* ldc);
-
-int
-zhemm_(char* side, char* uplo, integer* M, integer* N,
- doublecomplex* alpha,
- doublecomplex* A, integer* lda,
- doublecomplex* B, integer* ldb,
- doublecomplex* beta,
- doublecomplex* C, integer* ldc);
-
-int
-zherk_(char* uplo, char* trans, integer* N, integer* K,
- doublereal* alpha,
- doublecomplex* A, integer* lda,
- doublereal* beta,
- doublecomplex* C, integer* ldc);
-
-int
-zher2k_(char* uplo, char* trans, integer* N, integer* K,
- doublecomplex* alpha,
- doublecomplex* A, integer* lda,
- doublecomplex* B, integer* ldb,
- doublereal* beta,
- doublecomplex* C, integer* ldc);
-}
diff --git a/math/atlas/files/lapack.h b/math/atlas/files/lapack.h
deleted file mode 100644
index fd77ee5d746f..000000000000
--- a/math/atlas/files/lapack.h
+++ /dev/null
@@ -1,5085 +0,0 @@
-// lapack prototypes for C++
-// based on clapack.h in clapack.tgz, version 3.0(September 20, 2000)
-// available at http://www.netlib.org/clapack/
-// and modified by Nakata Maho <maho@FreeBSD.org>
-// for C++, which requires proper prototype definitions.
-
-extern "C"
-{
-#include <f2c.h>
-
-/* Subroutine */ int cbdsqr_(char *uplo, integer *n, integer *ncvt, integer *
- nru, integer *ncc, real *d__, real *e, complex *vt, integer *ldvt,
- complex *u, integer *ldu, complex *c__, integer *ldc, real *rwork,
- integer *info);
-
-/* Subroutine */ int cgbbrd_(char *vect, integer *m, integer *n, integer *ncc,
- integer *kl, integer *ku, complex *ab, integer *ldab, real *d__,
- real *e, complex *q, integer *ldq, complex *pt, integer *ldpt,
- complex *c__, integer *ldc, complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int cgbcon_(char *norm, integer *n, integer *kl, integer *ku,
- complex *ab, integer *ldab, integer *ipiv, real *anorm, real *rcond,
- complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int cgbequ_(integer *m, integer *n, integer *kl, integer *ku,
- complex *ab, integer *ldab, real *r__, real *c__, real *rowcnd, real
- *colcnd, real *amax, integer *info);
-
-/* Subroutine */ int cgbrfs_(char *trans, integer *n, integer *kl, integer *
- ku, integer *nrhs, complex *ab, integer *ldab, complex *afb, integer *
- ldafb, integer *ipiv, complex *b, integer *ldb, complex *x, integer *
- ldx, real *ferr, real *berr, complex *work, real *rwork, integer *
- info);
-
-/* Subroutine */ int cgbsv_(integer *n, integer *kl, integer *ku, integer *
- nrhs, complex *ab, integer *ldab, integer *ipiv, complex *b, integer *
- ldb, integer *info);
-
-/* Subroutine */ int cgbsvx_(char *fact, char *trans, integer *n, integer *kl,
- integer *ku, integer *nrhs, complex *ab, integer *ldab, complex *afb,
- integer *ldafb, integer *ipiv, char *equed, real *r__, real *c__,
- complex *b, integer *ldb, complex *x, integer *ldx, real *rcond, real
- *ferr, real *berr, complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int cgbtf2_(integer *m, integer *n, integer *kl, integer *ku,
- complex *ab, integer *ldab, integer *ipiv, integer *info);
-
-/* Subroutine */ int cgbtrf_(integer *m, integer *n, integer *kl, integer *ku,
- complex *ab, integer *ldab, integer *ipiv, integer *info);
-
-/* Subroutine */ int cgbtrs_(char *trans, integer *n, integer *kl, integer *
- ku, integer *nrhs, complex *ab, integer *ldab, integer *ipiv, complex
- *b, integer *ldb, integer *info);
-
-/* Subroutine */ int cgebak_(char *job, char *side, integer *n, integer *ilo,
- integer *ihi, real *scale, integer *m, complex *v, integer *ldv,
- integer *info);
-
-/* Subroutine */ int cgebal_(char *job, integer *n, complex *a, integer *lda,
- integer *ilo, integer *ihi, real *scale, integer *info);
-
-/* Subroutine */ int cgebd2_(integer *m, integer *n, complex *a, integer *lda,
- real *d__, real *e, complex *tauq, complex *taup, complex *work,
- integer *info);
-
-/* Subroutine */ int cgebrd_(integer *m, integer *n, complex *a, integer *lda,
- real *d__, real *e, complex *tauq, complex *taup, complex *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int cgecon_(char *norm, integer *n, complex *a, integer *lda,
- real *anorm, real *rcond, complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int cgeequ_(integer *m, integer *n, complex *a, integer *lda,
- real *r__, real *c__, real *rowcnd, real *colcnd, real *amax,
- integer *info);
-
-/* Subroutine */ int cgees_(char *jobvs, char *sort, L_fp select, integer *n,
- complex *a, integer *lda, integer *sdim, complex *w, complex *vs,
- integer *ldvs, complex *work, integer *lwork, real *rwork, logical *
- bwork, integer *info);
-
-/* Subroutine */ int cgeesx_(char *jobvs, char *sort, L_fp select, char *
- sense, integer *n, complex *a, integer *lda, integer *sdim, complex *
- w, complex *vs, integer *ldvs, real *rconde, real *rcondv, complex *
- work, integer *lwork, real *rwork, logical *bwork, integer *info);
-
-/* Subroutine */ int cgeev_(char *jobvl, char *jobvr, integer *n, complex *a,
- integer *lda, complex *w, complex *vl, integer *ldvl, complex *vr,
- integer *ldvr, complex *work, integer *lwork, real *rwork, integer *
- info);
-
-/* Subroutine */ int cgeevx_(char *balanc, char *jobvl, char *jobvr, char *
- sense, integer *n, complex *a, integer *lda, complex *w, complex *vl,
- integer *ldvl, complex *vr, integer *ldvr, integer *ilo, integer *ihi,
- real *scale, real *abnrm, real *rconde, real *rcondv, complex *work,
- integer *lwork, real *rwork, integer *info);
-
-/* Subroutine */ int cgegs_(char *jobvsl, char *jobvsr, integer *n, complex *
- a, integer *lda, complex *b, integer *ldb, complex *alpha, complex *
- beta, complex *vsl, integer *ldvsl, complex *vsr, integer *ldvsr,
- complex *work, integer *lwork, real *rwork, integer *info);
-
-/* Subroutine */ int cgegv_(char *jobvl, char *jobvr, integer *n, complex *a,
- integer *lda, complex *b, integer *ldb, complex *alpha, complex *beta,
- complex *vl, integer *ldvl, complex *vr, integer *ldvr, complex *
- work, integer *lwork, real *rwork, integer *info);
-
-/* Subroutine */ int cgehd2_(integer *n, integer *ilo, integer *ihi, complex *
- a, integer *lda, complex *tau, complex *work, integer *info);
-
-/* Subroutine */ int cgehrd_(integer *n, integer *ilo, integer *ihi, complex *
- a, integer *lda, complex *tau, complex *work, integer *lwork, integer
- *info);
-
-/* Subroutine */ int cgelq2_(integer *m, integer *n, complex *a, integer *lda,
- complex *tau, complex *work, integer *info);
-
-/* Subroutine */ int cgelqf_(integer *m, integer *n, complex *a, integer *lda,
- complex *tau, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cgels_(char *trans, integer *m, integer *n, integer *
- nrhs, complex *a, integer *lda, complex *b, integer *ldb, complex *
- work, integer *lwork, integer *info);
-
-/* Subroutine */ int cgelsx_(integer *m, integer *n, integer *nrhs, complex *
- a, integer *lda, complex *b, integer *ldb, integer *jpvt, real *rcond,
- integer *rank, complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int cgelsy_(integer *m, integer *n, integer *nrhs, complex *
- a, integer *lda, complex *b, integer *ldb, integer *jpvt, real *rcond,
- integer *rank, complex *work, integer *lwork, real *rwork, integer *
- info);
-
-/* Subroutine */ int cgeql2_(integer *m, integer *n, complex *a, integer *lda,
- complex *tau, complex *work, integer *info);
-
-/* Subroutine */ int cgeqlf_(integer *m, integer *n, complex *a, integer *lda,
- complex *tau, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cgeqp3_(integer *m, integer *n, complex *a, integer *lda,
- integer *jpvt, complex *tau, complex *work, integer *lwork, real *
- rwork, integer *info);
-
-/* Subroutine */ int cgeqpf_(integer *m, integer *n, complex *a, integer *lda,
- integer *jpvt, complex *tau, complex *work, real *rwork, integer *
- info);
-
-/* Subroutine */ int cgeqr2_(integer *m, integer *n, complex *a, integer *lda,
- complex *tau, complex *work, integer *info);
-
-/* Subroutine */ int cgeqrf_(integer *m, integer *n, complex *a, integer *lda,
- complex *tau, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cgerfs_(char *trans, integer *n, integer *nrhs, complex *
- a, integer *lda, complex *af, integer *ldaf, integer *ipiv, complex *
- b, integer *ldb, complex *x, integer *ldx, real *ferr, real *berr,
- complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int cgerq2_(integer *m, integer *n, complex *a, integer *lda,
- complex *tau, complex *work, integer *info);
-
-/* Subroutine */ int cgerqf_(integer *m, integer *n, complex *a, integer *lda,
- complex *tau, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cgesc2_(integer *n, complex *a, integer *lda, complex *
- rhs, integer *ipiv, integer *jpiv, real *scale);
-
-/* Subroutine */ int cgesv_(integer *n, integer *nrhs, complex *a, integer *
- lda, integer *ipiv, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int cgesvx_(char *fact, char *trans, integer *n, integer *
- nrhs, complex *a, integer *lda, complex *af, integer *ldaf, integer *
- ipiv, char *equed, real *r__, real *c__, complex *b, integer *ldb,
- complex *x, integer *ldx, real *rcond, real *ferr, real *berr,
- complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int cgetc2_(integer *n, complex *a, integer *lda, integer *
- ipiv, integer *jpiv, integer *info);
-
-/* Subroutine */ int cgetf2_(integer *m, integer *n, complex *a, integer *lda,
- integer *ipiv, integer *info);
-
-/* Subroutine */ int cgetrf_(integer *m, integer *n, complex *a, integer *lda,
- integer *ipiv, integer *info);
-
-/* Subroutine */ int cgetri_(integer *n, complex *a, integer *lda, integer *
- ipiv, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cgetrs_(char *trans, integer *n, integer *nrhs, complex *
- a, integer *lda, integer *ipiv, complex *b, integer *ldb, integer *
- info);
-
-/* Subroutine */ int cggbak_(char *job, char *side, integer *n, integer *ilo,
- integer *ihi, real *lscale, real *rscale, integer *m, complex *v,
- integer *ldv, integer *info);
-
-/* Subroutine */ int cggbal_(char *job, integer *n, complex *a, integer *lda,
- complex *b, integer *ldb, integer *ilo, integer *ihi, real *lscale,
- real *rscale, real *work, integer *info);
-
-/* Subroutine */ int cgges_(char *jobvsl, char *jobvsr, char *sort, L_fp
- selctg, integer *n, complex *a, integer *lda, complex *b, integer *
- ldb, integer *sdim, complex *alpha, complex *beta, complex *vsl,
- integer *ldvsl, complex *vsr, integer *ldvsr, complex *work, integer *
- lwork, real *rwork, logical *bwork, integer *info);
-
-/* Subroutine */ int cggesx_(char *jobvsl, char *jobvsr, char *sort, L_fp
- selctg, char *sense, integer *n, complex *a, integer *lda, complex *b,
- integer *ldb, integer *sdim, complex *alpha, complex *beta, complex *
- vsl, integer *ldvsl, complex *vsr, integer *ldvsr, real *rconde, real
- *rcondv, complex *work, integer *lwork, real *rwork, integer *iwork,
- integer *liwork, logical *bwork, integer *info);
-
-/* Subroutine */ int cggev_(char *jobvl, char *jobvr, integer *n, complex *a,
- integer *lda, complex *b, integer *ldb, complex *alpha, complex *beta,
- complex *vl, integer *ldvl, complex *vr, integer *ldvr, complex *
- work, integer *lwork, real *rwork, integer *info);
-
-/* Subroutine */ int cggevx_(char *balanc, char *jobvl, char *jobvr, char *
- sense, integer *n, complex *a, integer *lda, complex *b, integer *ldb,
- complex *alpha, complex *beta, complex *vl, integer *ldvl, complex *
- vr, integer *ldvr, integer *ilo, integer *ihi, real *lscale, real *
- rscale, real *abnrm, real *bbnrm, real *rconde, real *rcondv, complex
- *work, integer *lwork, real *rwork, integer *iwork, logical *bwork,
- integer *info);
-
-/* Subroutine */ int cggglm_(integer *n, integer *m, integer *p, complex *a,
- integer *lda, complex *b, integer *ldb, complex *d__, complex *x,
- complex *y, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cgghrd_(char *compq, char *compz, integer *n, integer *
- ilo, integer *ihi, complex *a, integer *lda, complex *b, integer *ldb,
- complex *q, integer *ldq, complex *z__, integer *ldz, integer *info);
-
-/* Subroutine */ int cgglse_(integer *m, integer *n, integer *p, complex *a,
- integer *lda, complex *b, integer *ldb, complex *c__, complex *d__,
- complex *x, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cggqrf_(integer *n, integer *m, integer *p, complex *a,
- integer *lda, complex *taua, complex *b, integer *ldb, complex *taub,
- complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cggrqf_(integer *m, integer *p, integer *n, complex *a,
- integer *lda, complex *taua, complex *b, integer *ldb, complex *taub,
- complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cggsvd_(char *jobu, char *jobv, char *jobq, integer *m,
- integer *n, integer *p, integer *k, integer *l, complex *a, integer *
- lda, complex *b, integer *ldb, real *alpha, real *beta, complex *u,
- integer *ldu, complex *v, integer *ldv, complex *q, integer *ldq,
- complex *work, real *rwork, integer *iwork, integer *info);
-
-/* Subroutine */ int cggsvp_(char *jobu, char *jobv, char *jobq, integer *m,
- integer *p, integer *n, complex *a, integer *lda, complex *b, integer
- *ldb, real *tola, real *tolb, integer *k, integer *l, complex *u,
- integer *ldu, complex *v, integer *ldv, complex *q, integer *ldq,
- integer *iwork, real *rwork, complex *tau, complex *work, integer *
- info);
-
-/* Subroutine */ int cgtcon_(char *norm, integer *n, complex *dl, complex *
- d__, complex *du, complex *du2, integer *ipiv, real *anorm, real *
- rcond, complex *work, integer *info);
-
-/* Subroutine */ int cgtrfs_(char *trans, integer *n, integer *nrhs, complex *
- dl, complex *d__, complex *du, complex *dlf, complex *df, complex *
- duf, complex *du2, integer *ipiv, complex *b, integer *ldb, complex *
- x, integer *ldx, real *ferr, real *berr, complex *work, real *rwork,
- integer *info);
-
-/* Subroutine */ int cgtsv_(integer *n, integer *nrhs, complex *dl, complex *
- d__, complex *du, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int cgtsvx_(char *fact, char *trans, integer *n, integer *
- nrhs, complex *dl, complex *d__, complex *du, complex *dlf, complex *
- df, complex *duf, complex *du2, integer *ipiv, complex *b, integer *
- ldb, complex *x, integer *ldx, real *rcond, real *ferr, real *berr,
- complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int cgttrf_(integer *n, complex *dl, complex *d__, complex *
- du, complex *du2, integer *ipiv, integer *info);
-
-/* Subroutine */ int cgttrs_(char *trans, integer *n, integer *nrhs, complex *
- dl, complex *d__, complex *du, complex *du2, integer *ipiv, complex *
- b, integer *ldb, integer *info);
-
-/* Subroutine */ int cgtts2_(integer *itrans, integer *n, integer *nrhs,
- complex *dl, complex *d__, complex *du, complex *du2, integer *ipiv,
- complex *b, integer *ldb);
-
-/* Subroutine */ int chbev_(char *jobz, char *uplo, integer *n, integer *kd,
- complex *ab, integer *ldab, real *w, complex *z__, integer *ldz,
- complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int chbevd_(char *jobz, char *uplo, integer *n, integer *kd,
- complex *ab, integer *ldab, real *w, complex *z__, integer *ldz,
- complex *work, integer *lwork, real *rwork, integer *lrwork, integer *
- iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int chbevx_(char *jobz, char *range, char *uplo, integer *n,
- integer *kd, complex *ab, integer *ldab, complex *q, integer *ldq,
- real *vl, real *vu, integer *il, integer *iu, real *abstol, integer *
- m, real *w, complex *z__, integer *ldz, complex *work, real *rwork,
- integer *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int chbgst_(char *vect, char *uplo, integer *n, integer *ka,
- integer *kb, complex *ab, integer *ldab, complex *bb, integer *ldbb,
- complex *x, integer *ldx, complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int chbgv_(char *jobz, char *uplo, integer *n, integer *ka,
- integer *kb, complex *ab, integer *ldab, complex *bb, integer *ldbb,
- real *w, complex *z__, integer *ldz, complex *work, real *rwork,
- integer *info);
-
-/* Subroutine */ int chbgvx_(char *jobz, char *range, char *uplo, integer *n,
- integer *ka, integer *kb, complex *ab, integer *ldab, complex *bb,
- integer *ldbb, complex *q, integer *ldq, real *vl, real *vu, integer *
- il, integer *iu, real *abstol, integer *m, real *w, complex *z__,
- integer *ldz, complex *work, real *rwork, integer *iwork, integer *
- ifail, integer *info);
-
-/* Subroutine */ int chbtrd_(char *vect, char *uplo, integer *n, integer *kd,
- complex *ab, integer *ldab, real *d__, real *e, complex *q, integer *
- ldq, complex *work, integer *info);
-
-/* Subroutine */ int checon_(char *uplo, integer *n, complex *a, integer *lda,
- integer *ipiv, real *anorm, real *rcond, complex *work, integer *
- info);
-
-/* Subroutine */ int cheev_(char *jobz, char *uplo, integer *n, complex *a,
- integer *lda, real *w, complex *work, integer *lwork, real *rwork,
- integer *info);
-
-/* Subroutine */ int cheevd_(char *jobz, char *uplo, integer *n, complex *a,
- integer *lda, real *w, complex *work, integer *lwork, real *rwork,
- integer *lrwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int cheevr_(char *jobz, char *range, char *uplo, integer *n,
- complex *a, integer *lda, real *vl, real *vu, integer *il, integer *
- iu, real *abstol, integer *m, real *w, complex *z__, integer *ldz,
- integer *isuppz, complex *work, integer *lwork, real *rwork, integer *
- lrwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int cheevx_(char *jobz, char *range, char *uplo, integer *n,
- complex *a, integer *lda, real *vl, real *vu, integer *il, integer *
- iu, real *abstol, integer *m, real *w, complex *z__, integer *ldz,
- complex *work, integer *lwork, real *rwork, integer *iwork, integer *
- ifail, integer *info);
-
-/* Subroutine */ int chegs2_(integer *itype, char *uplo, integer *n, complex *
- a, integer *lda, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int chegst_(integer *itype, char *uplo, integer *n, complex *
- a, integer *lda, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int chegv_(integer *itype, char *jobz, char *uplo, integer *
- n, complex *a, integer *lda, complex *b, integer *ldb, real *w,
- complex *work, integer *lwork, real *rwork, integer *info);
-
-/* Subroutine */ int chegvd_(integer *itype, char *jobz, char *uplo, integer *
- n, complex *a, integer *lda, complex *b, integer *ldb, real *w,
- complex *work, integer *lwork, real *rwork, integer *lrwork, integer *
- iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int chegvx_(integer *itype, char *jobz, char *range, char *
- uplo, integer *n, complex *a, integer *lda, complex *b, integer *ldb,
- real *vl, real *vu, integer *il, integer *iu, real *abstol, integer *
- m, real *w, complex *z__, integer *ldz, complex *work, integer *lwork,
- real *rwork, integer *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int cherfs_(char *uplo, integer *n, integer *nrhs, complex *
- a, integer *lda, complex *af, integer *ldaf, integer *ipiv, complex *
- b, integer *ldb, complex *x, integer *ldx, real *ferr, real *berr,
- complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int chesv_(char *uplo, integer *n, integer *nrhs, complex *a,
- integer *lda, integer *ipiv, complex *b, integer *ldb, complex *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int chesvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, complex *a, integer *lda, complex *af, integer *ldaf, integer *
- ipiv, complex *b, integer *ldb, complex *x, integer *ldx, real *rcond,
- real *ferr, real *berr, complex *work, integer *lwork, real *rwork,
- integer *info);
-
-/* Subroutine */ int chetf2_(char *uplo, integer *n, complex *a, integer *lda,
- integer *ipiv, integer *info);
-
-/* Subroutine */ int chetrd_(char *uplo, integer *n, complex *a, integer *lda,
- real *d__, real *e, complex *tau, complex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int chetrf_(char *uplo, integer *n, complex *a, integer *lda,
- integer *ipiv, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int chetri_(char *uplo, integer *n, complex *a, integer *lda,
- integer *ipiv, complex *work, integer *info);
-
-/* Subroutine */ int chetrs_(char *uplo, integer *n, integer *nrhs, complex *
- a, integer *lda, integer *ipiv, complex *b, integer *ldb, integer *
- info);
-
-/* Subroutine */ int chgeqz_(char *job, char *compq, char *compz, integer *n,
- integer *ilo, integer *ihi, complex *a, integer *lda, complex *b,
- integer *ldb, complex *alpha, complex *beta, complex *q, integer *ldq,
- complex *z__, integer *ldz, complex *work, integer *lwork, real *
- rwork, integer *info);
-
-/* Subroutine */ int chpcon_(char *uplo, integer *n, complex *ap, integer *
- ipiv, real *anorm, real *rcond, complex *work, integer *info);
-
-/* Subroutine */ int chpev_(char *jobz, char *uplo, integer *n, complex *ap,
- real *w, complex *z__, integer *ldz, complex *work, real *rwork,
- integer *info);
-
-/* Subroutine */ int chpevd_(char *jobz, char *uplo, integer *n, complex *ap,
- real *w, complex *z__, integer *ldz, complex *work, integer *lwork,
- real *rwork, integer *lrwork, integer *iwork, integer *liwork,
- integer *info);
-
-/* Subroutine */ int chpevx_(char *jobz, char *range, char *uplo, integer *n,
- complex *ap, real *vl, real *vu, integer *il, integer *iu, real *
- abstol, integer *m, real *w, complex *z__, integer *ldz, complex *
- work, real *rwork, integer *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int chpgst_(integer *itype, char *uplo, integer *n, complex *
- ap, complex *bp, integer *info);
-
-/* Subroutine */ int chpgv_(integer *itype, char *jobz, char *uplo, integer *
- n, complex *ap, complex *bp, real *w, complex *z__, integer *ldz,
- complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int chpgvd_(integer *itype, char *jobz, char *uplo, integer *
- n, complex *ap, complex *bp, real *w, complex *z__, integer *ldz,
- complex *work, integer *lwork, real *rwork, integer *lrwork, integer *
- iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int chpgvx_(integer *itype, char *jobz, char *range, char *
- uplo, integer *n, complex *ap, complex *bp, real *vl, real *vu,
- integer *il, integer *iu, real *abstol, integer *m, real *w, complex *
- z__, integer *ldz, complex *work, real *rwork, integer *iwork,
- integer *ifail, integer *info);
-
-/* Subroutine */ int chprfs_(char *uplo, integer *n, integer *nrhs, complex *
- ap, complex *afp, integer *ipiv, complex *b, integer *ldb, complex *x,
- integer *ldx, real *ferr, real *berr, complex *work, real *rwork,
- integer *info);
-
-/* Subroutine */ int chpsv_(char *uplo, integer *n, integer *nrhs, complex *
- ap, integer *ipiv, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int chpsvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, complex *ap, complex *afp, integer *ipiv, complex *b, integer *
- ldb, complex *x, integer *ldx, real *rcond, real *ferr, real *berr,
- complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int chptrd_(char *uplo, integer *n, complex *ap, real *d__,
- real *e, complex *tau, integer *info);
-
-/* Subroutine */ int chptrf_(char *uplo, integer *n, complex *ap, integer *
- ipiv, integer *info);
-
-/* Subroutine */ int chptri_(char *uplo, integer *n, complex *ap, integer *
- ipiv, complex *work, integer *info);
-
-/* Subroutine */ int chptrs_(char *uplo, integer *n, integer *nrhs, complex *
- ap, integer *ipiv, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int chsein_(char *side, char *eigsrc, char *initv, logical *
- select, integer *n, complex *h__, integer *ldh, complex *w, complex *
- vl, integer *ldvl, complex *vr, integer *ldvr, integer *mm, integer *
- m, complex *work, real *rwork, integer *ifaill, integer *ifailr,
- integer *info);
-
-/* Subroutine */ int chseqr_(char *job, char *compz, integer *n, integer *ilo,
- integer *ihi, complex *h__, integer *ldh, complex *w, complex *z__,
- integer *ldz, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int clabrd_(integer *m, integer *n, integer *nb, complex *a,
- integer *lda, real *d__, real *e, complex *tauq, complex *taup,
- complex *x, integer *ldx, complex *y, integer *ldy);
-
-/* Subroutine */ int clacgv_(integer *n, complex *x, integer *incx);
-
-/* Subroutine */ int clacon_(integer *n, complex *v, complex *x, real *est,
- integer *kase);
-
-/* Subroutine */ int clacp2_(char *uplo, integer *m, integer *n, real *a,
- integer *lda, complex *b, integer *ldb);
-
-/* Subroutine */ int clacpy_(char *uplo, integer *m, integer *n, complex *a,
- integer *lda, complex *b, integer *ldb);
-
-/* Subroutine */ int clacrm_(integer *m, integer *n, complex *a, integer *lda,
- real *b, integer *ldb, complex *c__, integer *ldc, real *rwork);
-
-/* Subroutine */ int clacrt_(integer *n, complex *cx, integer *incx, complex *
- cy, integer *incy, complex *c__, complex *s);
-
-/* Subroutine */ int claed0_(integer *qsiz, integer *n, real *d__, real *e,
- complex *q, integer *ldq, complex *qstore, integer *ldqs, real *rwork,
- integer *iwork, integer *info);
-
-/* Subroutine */ int claed7_(integer *n, integer *cutpnt, integer *qsiz,
- integer *tlvls, integer *curlvl, integer *curpbm, real *d__, complex *
- q, integer *ldq, real *rho, integer *indxq, real *qstore, integer *
- qptr, integer *prmptr, integer *perm, integer *givptr, integer *
- givcol, real *givnum, complex *work, real *rwork, integer *iwork,
- integer *info);
-
-/* Subroutine */ int claed8_(integer *k, integer *n, integer *qsiz, complex *
- q, integer *ldq, real *d__, real *rho, integer *cutpnt, real *z__,
- real *dlamda, complex *q2, integer *ldq2, real *w, integer *indxp,
- integer *indx, integer *indxq, integer *perm, integer *givptr,
- integer *givcol, real *givnum, integer *info);
-
-/* Subroutine */ int claein_(logical *rightv, logical *noinit, integer *n,
- complex *h__, integer *ldh, complex *w, complex *v, complex *b,
- integer *ldb, real *rwork, real *eps3, real *smlnum, integer *info);
-
-/* Subroutine */ int claesy_(complex *a, complex *b, complex *c__, complex *
- rt1, complex *rt2, complex *evscal, complex *cs1, complex *sn1);
-
-/* Subroutine */ int claev2_(complex *a, complex *b, complex *c__, real *rt1,
- real *rt2, real *cs1, complex *sn1);
-
-/* Subroutine */ int clags2_(logical *upper, real *a1, complex *a2, real *a3,
- real *b1, complex *b2, real *b3, real *csu, complex *snu, real *csv,
- complex *snv, real *csq, complex *snq);
-
-/* Subroutine */ int clagtm_(char *trans, integer *n, integer *nrhs, real *
- alpha, complex *dl, complex *d__, complex *du, complex *x, integer *
- ldx, real *beta, complex *b, integer *ldb);
-
-/* Subroutine */ int clahef_(char *uplo, integer *n, integer *nb, integer *kb,
- complex *a, integer *lda, integer *ipiv, complex *w, integer *ldw,
- integer *info);
-
-/* Subroutine */ int clahqr_(logical *wantt, logical *wantz, integer *n,
- integer *ilo, integer *ihi, complex *h__, integer *ldh, complex *w,
- integer *iloz, integer *ihiz, complex *z__, integer *ldz, integer *
- info);
-
-/* Subroutine */ int clahrd_(integer *n, integer *k, integer *nb, complex *a,
- integer *lda, complex *tau, complex *t, integer *ldt, complex *y,
- integer *ldy);
-
-/* Subroutine */ int claic1_(integer *job, integer *j, complex *x, real *sest,
- complex *w, complex *gamma, real *sestpr, complex *s, complex *c__);
-
-/* Subroutine */ int clals0_(integer *icompq, integer *nl, integer *nr,
- integer *sqre, integer *nrhs, complex *b, integer *ldb, complex *bx,
- integer *ldbx, integer *perm, integer *givptr, integer *givcol,
- integer *ldgcol, real *givnum, integer *ldgnum, real *poles, real *
- difl, real *difr, real *z__, integer *k, real *c__, real *s, real *
- rwork, integer *info);
-
-/* Subroutine */ int clalsa_(integer *icompq, integer *smlsiz, integer *n,
- integer *nrhs, complex *b, integer *ldb, complex *bx, integer *ldbx,
- real *u, integer *ldu, real *vt, integer *k, real *difl, real *difr,
- real *z__, real *poles, integer *givptr, integer *givcol, integer *
- ldgcol, integer *perm, real *givnum, real *c__, real *s, real *rwork,
- integer *iwork, integer *info);
-
-/* Subroutine */ int clapll_(integer *n, complex *x, integer *incx, complex *
- y, integer *incy, real *ssmin);
-
-/* Subroutine */ int clapmt_(logical *forwrd, integer *m, integer *n, complex
- *x, integer *ldx, integer *k);
-
-/* Subroutine */ int claqgb_(integer *m, integer *n, integer *kl, integer *ku,
- complex *ab, integer *ldab, real *r__, real *c__, real *rowcnd, real
- *colcnd, real *amax, char *equed);
-
-/* Subroutine */ int claqge_(integer *m, integer *n, complex *a, integer *lda,
- real *r__, real *c__, real *rowcnd, real *colcnd, real *amax, char *
- equed);
-
-/* Subroutine */ int claqhb_(char *uplo, integer *n, integer *kd, complex *ab,
- integer *ldab, real *s, real *scond, real *amax, char *equed);
-
-/* Subroutine */ int claqhe_(char *uplo, integer *n, complex *a, integer *lda,
- real *s, real *scond, real *amax, char *equed);
-
-/* Subroutine */ int claqhp_(char *uplo, integer *n, complex *ap, real *s,
- real *scond, real *amax, char *equed);
-
-/* Subroutine */ int claqp2_(integer *m, integer *n, integer *offset, complex
- *a, integer *lda, integer *jpvt, complex *tau, real *vn1, real *vn2,
- complex *work);
-
-/* Subroutine */ int claqps_(integer *m, integer *n, integer *offset, integer
- *nb, integer *kb, complex *a, integer *lda, integer *jpvt, complex *
- tau, real *vn1, real *vn2, complex *auxv, complex *f, integer *ldf);
-
-/* Subroutine */ int claqsb_(char *uplo, integer *n, integer *kd, complex *ab,
- integer *ldab, real *s, real *scond, real *amax, char *equed);
-
-/* Subroutine */ int claqsp_(char *uplo, integer *n, complex *ap, real *s,
- real *scond, real *amax, char *equed);
-
-/* Subroutine */ int claqsy_(char *uplo, integer *n, complex *a, integer *lda,
- real *s, real *scond, real *amax, char *equed);
-
-/* Subroutine */ int clar1v_(integer *n, integer *b1, integer *bn, real *
- sigma, real *d__, real *l, real *ld, real *lld, real *gersch, complex
- *z__, real *ztz, real *mingma, integer *r__, integer *isuppz, real *
- work);
-
-/* Subroutine */ int clar2v_(integer *n, complex *x, complex *y, complex *z__,
- integer *incx, real *c__, complex *s, integer *incc);
-
-/* Subroutine */ int clarcm_(integer *m, integer *n, real *a, integer *lda,
- complex *b, integer *ldb, complex *c__, integer *ldc, real *rwork);
-
-/* Subroutine */ int clarf_(char *side, integer *m, integer *n, complex *v,
- integer *incv, complex *tau, complex *c__, integer *ldc, complex *
- work);
-
-/* Subroutine */ int clarfb_(char *side, char *trans, char *direct, char *
- storev, integer *m, integer *n, integer *k, complex *v, integer *ldv,
- complex *t, integer *ldt, complex *c__, integer *ldc, complex *work,
- integer *ldwork);
-
-/* Subroutine */ int clarfg_(integer *n, complex *alpha, complex *x, integer *
- incx, complex *tau);
-
-/* Subroutine */ int clarft_(char *direct, char *storev, integer *n, integer *
- k, complex *v, integer *ldv, complex *tau, complex *t, integer *ldt);
-
-/* Subroutine */ int clarfx_(char *side, integer *m, integer *n, complex *v,
- complex *tau, complex *c__, integer *ldc, complex *work);
-
-/* Subroutine */ int clargv_(integer *n, complex *x, integer *incx, complex *
- y, integer *incy, real *c__, integer *incc);
-
-/* Subroutine */ int clarnv_(integer *idist, integer *iseed, integer *n,
- complex *x);
-
-/* Subroutine */ int clarrv_(integer *n, real *d__, real *l, integer *isplit,
- integer *m, real *w, integer *iblock, real *gersch, real *tol,
- complex *z__, integer *ldz, integer *isuppz, real *work, integer *
- iwork, integer *info);
-
-/* Subroutine */ int clartg_(complex *f, complex *g, real *cs, complex *sn,
- complex *r__);
-
-/* Subroutine */ int clartv_(integer *n, complex *x, integer *incx, complex *
- y, integer *incy, real *c__, complex *s, integer *incc);
-
-/* Subroutine */ int clarz_(char *side, integer *m, integer *n, integer *l,
- complex *v, integer *incv, complex *tau, complex *c__, integer *ldc,
- complex *work);
-
-/* Subroutine */ int clarzb_(char *side, char *trans, char *direct, char *
- storev, integer *m, integer *n, integer *k, integer *l, complex *v,
- integer *ldv, complex *t, integer *ldt, complex *c__, integer *ldc,
- complex *work, integer *ldwork);
-
-/* Subroutine */ int clarzt_(char *direct, char *storev, integer *n, integer *
- k, complex *v, integer *ldv, complex *tau, complex *t, integer *ldt);
-
-/* Subroutine */ int clascl_(char *type__, integer *kl, integer *ku, real *
- cfrom, real *cto, integer *m, integer *n, complex *a, integer *lda,
- integer *info);
-
-/* Subroutine */ int claset_(char *uplo, integer *m, integer *n, complex *
- alpha, complex *beta, complex *a, integer *lda);
-
-/* Subroutine */ int clasr_(char *side, char *pivot, char *direct, integer *m,
- integer *n, real *c__, real *s, complex *a, integer *lda);
-
-/* Subroutine */ int classq_(integer *n, complex *x, integer *incx, real *
- scale, real *sumsq);
-
-/* Subroutine */ int claswp_(integer *n, complex *a, integer *lda, integer *
- k1, integer *k2, integer *ipiv, integer *incx);
-
-/* Subroutine */ int clasyf_(char *uplo, integer *n, integer *nb, integer *kb,
- complex *a, integer *lda, integer *ipiv, complex *w, integer *ldw,
- integer *info);
-
-/* Subroutine */ int clatbs_(char *uplo, char *trans, char *diag, char *
- normin, integer *n, integer *kd, complex *ab, integer *ldab, complex *
- x, real *scale, real *cnorm, integer *info);
-
-/* Subroutine */ int clatdf_(integer *ijob, integer *n, complex *z__, integer
- *ldz, complex *rhs, real *rdsum, real *rdscal, integer *ipiv, integer
- *jpiv);
-
-/* Subroutine */ int clatps_(char *uplo, char *trans, char *diag, char *
- normin, integer *n, complex *ap, complex *x, real *scale, real *cnorm,
- integer *info);
-
-/* Subroutine */ int clatrd_(char *uplo, integer *n, integer *nb, complex *a,
- integer *lda, real *e, complex *tau, complex *w, integer *ldw);
-
-/* Subroutine */ int clatrs_(char *uplo, char *trans, char *diag, char *
- normin, integer *n, complex *a, integer *lda, complex *x, real *scale,
- real *cnorm, integer *info);
-
-/* Subroutine */ int clatrz_(integer *m, integer *n, integer *l, complex *a,
- integer *lda, complex *tau, complex *work);
-
-/* Subroutine */ int clatzm_(char *side, integer *m, integer *n, complex *v,
- integer *incv, complex *tau, complex *c1, complex *c2, integer *ldc,
- complex *work);
-
-/* Subroutine */ int clauu2_(char *uplo, integer *n, complex *a, integer *lda,
- integer *info);
-
-/* Subroutine */ int clauum_(char *uplo, integer *n, complex *a, integer *lda,
- integer *info);
-
-/* Subroutine */ int cpbcon_(char *uplo, integer *n, integer *kd, complex *ab,
- integer *ldab, real *anorm, real *rcond, complex *work, real *rwork,
- integer *info);
-
-/* Subroutine */ int cpbequ_(char *uplo, integer *n, integer *kd, complex *ab,
- integer *ldab, real *s, real *scond, real *amax, integer *info);
-
-/* Subroutine */ int cpbrfs_(char *uplo, integer *n, integer *kd, integer *
- nrhs, complex *ab, integer *ldab, complex *afb, integer *ldafb,
- complex *b, integer *ldb, complex *x, integer *ldx, real *ferr, real *
- berr, complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int cpbstf_(char *uplo, integer *n, integer *kd, complex *ab,
- integer *ldab, integer *info);
-
-/* Subroutine */ int cpbsv_(char *uplo, integer *n, integer *kd, integer *
- nrhs, complex *ab, integer *ldab, complex *b, integer *ldb, integer *
- info);
-
-/* Subroutine */ int cpbsvx_(char *fact, char *uplo, integer *n, integer *kd,
- integer *nrhs, complex *ab, integer *ldab, complex *afb, integer *
- ldafb, char *equed, real *s, complex *b, integer *ldb, complex *x,
- integer *ldx, real *rcond, real *ferr, real *berr, complex *work,
- real *rwork, integer *info);
-
-/* Subroutine */ int cpbtf2_(char *uplo, integer *n, integer *kd, complex *ab,
- integer *ldab, integer *info);
-
-/* Subroutine */ int cpbtrf_(char *uplo, integer *n, integer *kd, complex *ab,
- integer *ldab, integer *info);
-
-/* Subroutine */ int cpbtrs_(char *uplo, integer *n, integer *kd, integer *
- nrhs, complex *ab, integer *ldab, complex *b, integer *ldb, integer *
- info);
-
-/* Subroutine */ int cpocon_(char *uplo, integer *n, complex *a, integer *lda,
- real *anorm, real *rcond, complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int cpoequ_(integer *n, complex *a, integer *lda, real *s,
- real *scond, real *amax, integer *info);
-
-/* Subroutine */ int cporfs_(char *uplo, integer *n, integer *nrhs, complex *
- a, integer *lda, complex *af, integer *ldaf, complex *b, integer *ldb,
- complex *x, integer *ldx, real *ferr, real *berr, complex *work,
- real *rwork, integer *info);
-
-/* Subroutine */ int cposv_(char *uplo, integer *n, integer *nrhs, complex *a,
- integer *lda, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int cposvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, complex *a, integer *lda, complex *af, integer *ldaf, char *
- equed, real *s, complex *b, integer *ldb, complex *x, integer *ldx,
- real *rcond, real *ferr, real *berr, complex *work, real *rwork,
- integer *info);
-
-/* Subroutine */ int cpotf2_(char *uplo, integer *n, complex *a, integer *lda,
- integer *info);
-
-/* Subroutine */ int cpotrf_(char *uplo, integer *n, complex *a, integer *lda,
- integer *info);
-
-/* Subroutine */ int cpotri_(char *uplo, integer *n, complex *a, integer *lda,
- integer *info);
-
-/* Subroutine */ int cpotrs_(char *uplo, integer *n, integer *nrhs, complex *
- a, integer *lda, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int cppcon_(char *uplo, integer *n, complex *ap, real *anorm,
- real *rcond, complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int cppequ_(char *uplo, integer *n, complex *ap, real *s,
- real *scond, real *amax, integer *info);
-
-/* Subroutine */ int cpprfs_(char *uplo, integer *n, integer *nrhs, complex *
- ap, complex *afp, complex *b, integer *ldb, complex *x, integer *ldx,
- real *ferr, real *berr, complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int cppsv_(char *uplo, integer *n, integer *nrhs, complex *
- ap, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int cppsvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, complex *ap, complex *afp, char *equed, real *s, complex *b,
- integer *ldb, complex *x, integer *ldx, real *rcond, real *ferr, real
- *berr, complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int cpptrf_(char *uplo, integer *n, complex *ap, integer *
- info);
-
-/* Subroutine */ int cpptri_(char *uplo, integer *n, complex *ap, integer *
- info);
-
-/* Subroutine */ int cpptrs_(char *uplo, integer *n, integer *nrhs, complex *
- ap, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int cptcon_(integer *n, real *d__, complex *e, real *anorm,
- real *rcond, real *rwork, integer *info);
-
-/* Subroutine */ int cptrfs_(char *uplo, integer *n, integer *nrhs, real *d__,
- complex *e, real *df, complex *ef, complex *b, integer *ldb, complex
- *x, integer *ldx, real *ferr, real *berr, complex *work, real *rwork,
- integer *info);
-
-/* Subroutine */ int cptsv_(integer *n, integer *nrhs, real *d__, complex *e,
- complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int cptsvx_(char *fact, integer *n, integer *nrhs, real *d__,
- complex *e, real *df, complex *ef, complex *b, integer *ldb, complex
- *x, integer *ldx, real *rcond, real *ferr, real *berr, complex *work,
- real *rwork, integer *info);
-
-/* Subroutine */ int cpttrf_(integer *n, real *d__, complex *e, integer *info);
-
-/* Subroutine */ int cpttrs_(char *uplo, integer *n, integer *nrhs, real *d__,
- complex *e, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int cptts2_(integer *iuplo, integer *n, integer *nrhs, real *
- d__, complex *e, complex *b, integer *ldb);
-
-/* Subroutine */ int crot_(integer *n, complex *cx, integer *incx, complex *
- cy, integer *incy, real *c__, complex *s);
-
-/* Subroutine */ int cspcon_(char *uplo, integer *n, complex *ap, integer *
- ipiv, real *anorm, real *rcond, complex *work, integer *info);
-
-/* Subroutine */ int cspmv_(char *uplo, integer *n, complex *alpha, complex *
- ap, complex *x, integer *incx, complex *beta, complex *y, integer *
- incy);
-
-/* Subroutine */ int cspr_(char *uplo, integer *n, complex *alpha, complex *x,
- integer *incx, complex *ap);
-
-/* Subroutine */ int csprfs_(char *uplo, integer *n, integer *nrhs, complex *
- ap, complex *afp, integer *ipiv, complex *b, integer *ldb, complex *x,
- integer *ldx, real *ferr, real *berr, complex *work, real *rwork,
- integer *info);
-
-/* Subroutine */ int cspsv_(char *uplo, integer *n, integer *nrhs, complex *
- ap, integer *ipiv, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int cspsvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, complex *ap, complex *afp, integer *ipiv, complex *b, integer *
- ldb, complex *x, integer *ldx, real *rcond, real *ferr, real *berr,
- complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int csptrf_(char *uplo, integer *n, complex *ap, integer *
- ipiv, integer *info);
-
-/* Subroutine */ int csptri_(char *uplo, integer *n, complex *ap, integer *
- ipiv, complex *work, integer *info);
-
-/* Subroutine */ int csptrs_(char *uplo, integer *n, integer *nrhs, complex *
- ap, integer *ipiv, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int csrot_(integer *n, complex *cx, integer *incx, complex *
- cy, integer *incy, real *c__, real *s);
-
-/* Subroutine */ int csrscl_(integer *n, real *sa, complex *sx, integer *incx);
-
-/* Subroutine */ int cstedc_(char *compz, integer *n, real *d__, real *e,
- complex *z__, integer *ldz, complex *work, integer *lwork, real *
- rwork, integer *lrwork, integer *iwork, integer *liwork, integer *
- info);
-
-/* Subroutine */ int cstein_(integer *n, real *d__, real *e, integer *m, real
- *w, integer *iblock, integer *isplit, complex *z__, integer *ldz,
- real *work, integer *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int csteqr_(char *compz, integer *n, real *d__, real *e,
- complex *z__, integer *ldz, real *work, integer *info);
-
-/* Subroutine */ int csycon_(char *uplo, integer *n, complex *a, integer *lda,
- integer *ipiv, real *anorm, real *rcond, complex *work, integer *
- info);
-
-/* Subroutine */ int csymv_(char *uplo, integer *n, complex *alpha, complex *
- a, integer *lda, complex *x, integer *incx, complex *beta, complex *y,
- integer *incy);
-
-/* Subroutine */ int csyr_(char *uplo, integer *n, complex *alpha, complex *x,
- integer *incx, complex *a, integer *lda);
-
-/* Subroutine */ int csyrfs_(char *uplo, integer *n, integer *nrhs, complex *
- a, integer *lda, complex *af, integer *ldaf, integer *ipiv, complex *
- b, integer *ldb, complex *x, integer *ldx, real *ferr, real *berr,
- complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int csysv_(char *uplo, integer *n, integer *nrhs, complex *a,
- integer *lda, integer *ipiv, complex *b, integer *ldb, complex *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int csysvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, complex *a, integer *lda, complex *af, integer *ldaf, integer *
- ipiv, complex *b, integer *ldb, complex *x, integer *ldx, real *rcond,
- real *ferr, real *berr, complex *work, integer *lwork, real *rwork,
- integer *info);
-
-/* Subroutine */ int csytf2_(char *uplo, integer *n, complex *a, integer *lda,
- integer *ipiv, integer *info);
-
-/* Subroutine */ int csytrf_(char *uplo, integer *n, complex *a, integer *lda,
- integer *ipiv, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int csytri_(char *uplo, integer *n, complex *a, integer *lda,
- integer *ipiv, complex *work, integer *info);
-
-/* Subroutine */ int csytrs_(char *uplo, integer *n, integer *nrhs, complex *
- a, integer *lda, integer *ipiv, complex *b, integer *ldb, integer *
- info);
-
-/* Subroutine */ int ctbcon_(char *norm, char *uplo, char *diag, integer *n,
- integer *kd, complex *ab, integer *ldab, real *rcond, complex *work,
- real *rwork, integer *info);
-
-/* Subroutine */ int ctbrfs_(char *uplo, char *trans, char *diag, integer *n,
- integer *kd, integer *nrhs, complex *ab, integer *ldab, complex *b,
- integer *ldb, complex *x, integer *ldx, real *ferr, real *berr,
- complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int ctbtrs_(char *uplo, char *trans, char *diag, integer *n,
- integer *kd, integer *nrhs, complex *ab, integer *ldab, complex *b,
- integer *ldb, integer *info);
-
-/* Subroutine */ int ctgevc_(char *side, char *howmny, logical *select,
- integer *n, complex *a, integer *lda, complex *b, integer *ldb,
- complex *vl, integer *ldvl, complex *vr, integer *ldvr, integer *mm,
- integer *m, complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int ctgex2_(logical *wantq, logical *wantz, integer *n,
- complex *a, integer *lda, complex *b, integer *ldb, complex *q,
- integer *ldq, complex *z__, integer *ldz, integer *j1, integer *info);
-
-/* Subroutine */ int ctgexc_(logical *wantq, logical *wantz, integer *n,
- complex *a, integer *lda, complex *b, integer *ldb, complex *q,
- integer *ldq, complex *z__, integer *ldz, integer *ifst, integer *
- ilst, integer *info);
-
-/* Subroutine */ int ctgsen_(integer *ijob, logical *wantq, logical *wantz,
- logical *select, integer *n, complex *a, integer *lda, complex *b,
- integer *ldb, complex *alpha, complex *beta, complex *q, integer *ldq,
- complex *z__, integer *ldz, integer *m, real *pl, real *pr, real *
- dif, complex *work, integer *lwork, integer *iwork, integer *liwork,
- integer *info);
-
-/* Subroutine */ int ctgsja_(char *jobu, char *jobv, char *jobq, integer *m,
- integer *p, integer *n, integer *k, integer *l, complex *a, integer *
- lda, complex *b, integer *ldb, real *tola, real *tolb, real *alpha,
- real *beta, complex *u, integer *ldu, complex *v, integer *ldv,
- complex *q, integer *ldq, complex *work, integer *ncycle, integer *
- info);
-
-/* Subroutine */ int ctgsna_(char *job, char *howmny, logical *select,
- integer *n, complex *a, integer *lda, complex *b, integer *ldb,
- complex *vl, integer *ldvl, complex *vr, integer *ldvr, real *s, real
- *dif, integer *mm, integer *m, complex *work, integer *lwork, integer
- *iwork, integer *info);
-
-/* Subroutine */ int ctgsy2_(char *trans, integer *ijob, integer *m, integer *
- n, complex *a, integer *lda, complex *b, integer *ldb, complex *c__,
- integer *ldc, complex *d__, integer *ldd, complex *e, integer *lde,
- complex *f, integer *ldf, real *scale, real *rdsum, real *rdscal,
- integer *info);
-
-/* Subroutine */ int ctgsyl_(char *trans, integer *ijob, integer *m, integer *
- n, complex *a, integer *lda, complex *b, integer *ldb, complex *c__,
- integer *ldc, complex *d__, integer *ldd, complex *e, integer *lde,
- complex *f, integer *ldf, real *scale, real *dif, complex *work,
- integer *lwork, integer *iwork, integer *info);
-
-/* Subroutine */ int ctpcon_(char *norm, char *uplo, char *diag, integer *n,
- complex *ap, real *rcond, complex *work, real *rwork, integer *info);
-
-/* Subroutine */ int ctprfs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, complex *ap, complex *b, integer *ldb, complex *x,
- integer *ldx, real *ferr, real *berr, complex *work, real *rwork,
- integer *info);
-
-/* Subroutine */ int ctptri_(char *uplo, char *diag, integer *n, complex *ap,
- integer *info);
-
-/* Subroutine */ int ctptrs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, complex *ap, complex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int ctrcon_(char *norm, char *uplo, char *diag, integer *n,
- complex *a, integer *lda, real *rcond, complex *work, real *rwork,
- integer *info);
-
-/* Subroutine */ int ctrevc_(char *side, char *howmny, logical *select,
- integer *n, complex *t, integer *ldt, complex *vl, integer *ldvl,
- complex *vr, integer *ldvr, integer *mm, integer *m, complex *work,
- real *rwork, integer *info);
-
-/* Subroutine */ int ctrexc_(char *compq, integer *n, complex *t, integer *
- ldt, complex *q, integer *ldq, integer *ifst, integer *ilst, integer *
- info);
-
-/* Subroutine */ int ctrrfs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, complex *a, integer *lda, complex *b, integer *ldb,
- complex *x, integer *ldx, real *ferr, real *berr, complex *work, real
- *rwork, integer *info);
-
-/* Subroutine */ int ctrsen_(char *job, char *compq, logical *select, integer
- *n, complex *t, integer *ldt, complex *q, integer *ldq, complex *w,
- integer *m, real *s, real *sep, complex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int ctrsna_(char *job, char *howmny, logical *select,
- integer *n, complex *t, integer *ldt, complex *vl, integer *ldvl,
- complex *vr, integer *ldvr, real *s, real *sep, integer *mm, integer *
- m, complex *work, integer *ldwork, real *rwork, integer *info);
-
-/* Subroutine */ int ctrsyl_(char *trana, char *tranb, integer *isgn, integer
- *m, integer *n, complex *a, integer *lda, complex *b, integer *ldb,
- complex *c__, integer *ldc, real *scale, integer *info);
-
-/* Subroutine */ int ctrti2_(char *uplo, char *diag, integer *n, complex *a,
- integer *lda, integer *info);
-
-/* Subroutine */ int ctrtri_(char *uplo, char *diag, integer *n, complex *a,
- integer *lda, integer *info);
-
-/* Subroutine */ int ctrtrs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, complex *a, integer *lda, complex *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int ctzrqf_(integer *m, integer *n, complex *a, integer *lda,
- complex *tau, integer *info);
-
-/* Subroutine */ int ctzrzf_(integer *m, integer *n, complex *a, integer *lda,
- complex *tau, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cung2l_(integer *m, integer *n, integer *k, complex *a,
- integer *lda, complex *tau, complex *work, integer *info);
-
-/* Subroutine */ int cung2r_(integer *m, integer *n, integer *k, complex *a,
- integer *lda, complex *tau, complex *work, integer *info);
-
-/* Subroutine */ int cungbr_(char *vect, integer *m, integer *n, integer *k,
- complex *a, integer *lda, complex *tau, complex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int cunghr_(integer *n, integer *ilo, integer *ihi, complex *
- a, integer *lda, complex *tau, complex *work, integer *lwork, integer
- *info);
-
-/* Subroutine */ int cungl2_(integer *m, integer *n, integer *k, complex *a,
- integer *lda, complex *tau, complex *work, integer *info);
-
-/* Subroutine */ int cunglq_(integer *m, integer *n, integer *k, complex *a,
- integer *lda, complex *tau, complex *work, integer *lwork, integer *
- info);
-
-/* Subroutine */ int cungql_(integer *m, integer *n, integer *k, complex *a,
- integer *lda, complex *tau, complex *work, integer *lwork, integer *
- info);
-
-/* Subroutine */ int cungqr_(integer *m, integer *n, integer *k, complex *a,
- integer *lda, complex *tau, complex *work, integer *lwork, integer *
- info);
-
-/* Subroutine */ int cungr2_(integer *m, integer *n, integer *k, complex *a,
- integer *lda, complex *tau, complex *work, integer *info);
-
-/* Subroutine */ int cungrq_(integer *m, integer *n, integer *k, complex *a,
- integer *lda, complex *tau, complex *work, integer *lwork, integer *
- info);
-
-/* Subroutine */ int cungtr_(char *uplo, integer *n, complex *a, integer *lda,
- complex *tau, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cunm2l_(char *side, char *trans, integer *m, integer *n,
- integer *k, complex *a, integer *lda, complex *tau, complex *c__,
- integer *ldc, complex *work, integer *info);
-
-/* Subroutine */ int cunm2r_(char *side, char *trans, integer *m, integer *n,
- integer *k, complex *a, integer *lda, complex *tau, complex *c__,
- integer *ldc, complex *work, integer *info);
-
-/* Subroutine */ int cunmbr_(char *vect, char *side, char *trans, integer *m,
- integer *n, integer *k, complex *a, integer *lda, complex *tau,
- complex *c__, integer *ldc, complex *work, integer *lwork, integer *
- info);
-
-/* Subroutine */ int cunmhr_(char *side, char *trans, integer *m, integer *n,
- integer *ilo, integer *ihi, complex *a, integer *lda, complex *tau,
- complex *c__, integer *ldc, complex *work, integer *lwork, integer *
- info);
-
-/* Subroutine */ int cunml2_(char *side, char *trans, integer *m, integer *n,
- integer *k, complex *a, integer *lda, complex *tau, complex *c__,
- integer *ldc, complex *work, integer *info);
-
-/* Subroutine */ int cunmlq_(char *side, char *trans, integer *m, integer *n,
- integer *k, complex *a, integer *lda, complex *tau, complex *c__,
- integer *ldc, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cunmql_(char *side, char *trans, integer *m, integer *n,
- integer *k, complex *a, integer *lda, complex *tau, complex *c__,
- integer *ldc, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cunmqr_(char *side, char *trans, integer *m, integer *n,
- integer *k, complex *a, integer *lda, complex *tau, complex *c__,
- integer *ldc, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cunmr2_(char *side, char *trans, integer *m, integer *n,
- integer *k, complex *a, integer *lda, complex *tau, complex *c__,
- integer *ldc, complex *work, integer *info);
-
-/* Subroutine */ int cunmr3_(char *side, char *trans, integer *m, integer *n,
- integer *k, integer *l, complex *a, integer *lda, complex *tau,
- complex *c__, integer *ldc, complex *work, integer *info);
-
-/* Subroutine */ int cunmrq_(char *side, char *trans, integer *m, integer *n,
- integer *k, complex *a, integer *lda, complex *tau, complex *c__,
- integer *ldc, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cunmrz_(char *side, char *trans, integer *m, integer *n,
- integer *k, integer *l, complex *a, integer *lda, complex *tau,
- complex *c__, integer *ldc, complex *work, integer *lwork, integer *
- info);
-
-/* Subroutine */ int cunmtr_(char *side, char *uplo, char *trans, integer *m,
- integer *n, complex *a, integer *lda, complex *tau, complex *c__,
- integer *ldc, complex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int cupgtr_(char *uplo, integer *n, complex *ap, complex *
- tau, complex *q, integer *ldq, complex *work, integer *info);
-
-/* Subroutine */ int cupmtr_(char *side, char *uplo, char *trans, integer *m,
- integer *n, complex *ap, complex *tau, complex *c__, integer *ldc,
- complex *work, integer *info);
-
-/* Subroutine */ int dbdsdc_(char *uplo, char *compq, integer *n, doublereal *
- d__, doublereal *e, doublereal *u, integer *ldu, doublereal *vt,
- integer *ldvt, doublereal *q, integer *iq, doublereal *work, integer *
- iwork, integer *info);
-
-/* Subroutine */ int dbdsqr_(char *uplo, integer *n, integer *ncvt, integer *
- nru, integer *ncc, doublereal *d__, doublereal *e, doublereal *vt,
- integer *ldvt, doublereal *u, integer *ldu, doublereal *c__, integer *
- ldc, doublereal *work, integer *info);
-
-/* Subroutine */ int ddisna_(char *job, integer *m, integer *n, doublereal *
- d__, doublereal *sep, integer *info);
-
-/* Subroutine */ int dgbbrd_(char *vect, integer *m, integer *n, integer *ncc,
- integer *kl, integer *ku, doublereal *ab, integer *ldab, doublereal *
- d__, doublereal *e, doublereal *q, integer *ldq, doublereal *pt,
- integer *ldpt, doublereal *c__, integer *ldc, doublereal *work,
- integer *info);
-
-/* Subroutine */ int dgbcon_(char *norm, integer *n, integer *kl, integer *ku,
- doublereal *ab, integer *ldab, integer *ipiv, doublereal *anorm,
- doublereal *rcond, doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dgbequ_(integer *m, integer *n, integer *kl, integer *ku,
- doublereal *ab, integer *ldab, doublereal *r__, doublereal *c__,
- doublereal *rowcnd, doublereal *colcnd, doublereal *amax, integer *
- info);
-
-/* Subroutine */ int dgbrfs_(char *trans, integer *n, integer *kl, integer *
- ku, integer *nrhs, doublereal *ab, integer *ldab, doublereal *afb,
- integer *ldafb, integer *ipiv, doublereal *b, integer *ldb,
- doublereal *x, integer *ldx, doublereal *ferr, doublereal *berr,
- doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dgbsv_(integer *n, integer *kl, integer *ku, integer *
- nrhs, doublereal *ab, integer *ldab, integer *ipiv, doublereal *b,
- integer *ldb, integer *info);
-
-/* Subroutine */ int dgbsvx_(char *fact, char *trans, integer *n, integer *kl,
- integer *ku, integer *nrhs, doublereal *ab, integer *ldab,
- doublereal *afb, integer *ldafb, integer *ipiv, char *equed,
- doublereal *r__, doublereal *c__, doublereal *b, integer *ldb,
- doublereal *x, integer *ldx, doublereal *rcond, doublereal *ferr,
- doublereal *berr, doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dgbtf2_(integer *m, integer *n, integer *kl, integer *ku,
- doublereal *ab, integer *ldab, integer *ipiv, integer *info);
-
-/* Subroutine */ int dgbtrf_(integer *m, integer *n, integer *kl, integer *ku,
- doublereal *ab, integer *ldab, integer *ipiv, integer *info);
-
-/* Subroutine */ int dgbtrs_(char *trans, integer *n, integer *kl, integer *
- ku, integer *nrhs, doublereal *ab, integer *ldab, integer *ipiv,
- doublereal *b, integer *ldb, integer *info);
-
-/* Subroutine */ int dgebak_(char *job, char *side, integer *n, integer *ilo,
- integer *ihi, doublereal *scale, integer *m, doublereal *v, integer *
- ldv, integer *info);
-
-/* Subroutine */ int dgebal_(char *job, integer *n, doublereal *a, integer *
- lda, integer *ilo, integer *ihi, doublereal *scale, integer *info);
-
-/* Subroutine */ int dgebd2_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *d__, doublereal *e, doublereal *tauq, doublereal *
- taup, doublereal *work, integer *info);
-
-/* Subroutine */ int dgebrd_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *d__, doublereal *e, doublereal *tauq, doublereal *
- taup, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dgecon_(char *norm, integer *n, doublereal *a, integer *
- lda, doublereal *anorm, doublereal *rcond, doublereal *work, integer *
- iwork, integer *info);
-
-/* Subroutine */ int dgeequ_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *r__, doublereal *c__, doublereal *rowcnd, doublereal
- *colcnd, doublereal *amax, integer *info);
-
-/* Subroutine */ int dgees_(char *jobvs, char *sort, L_fp select, integer *n,
- doublereal *a, integer *lda, integer *sdim, doublereal *wr,
- doublereal *wi, doublereal *vs, integer *ldvs, doublereal *work,
- integer *lwork, logical *bwork, integer *info);
-
-/* Subroutine */ int dgeesx_(char *jobvs, char *sort, L_fp select, char *
- sense, integer *n, doublereal *a, integer *lda, integer *sdim,
- doublereal *wr, doublereal *wi, doublereal *vs, integer *ldvs,
- doublereal *rconde, doublereal *rcondv, doublereal *work, integer *
- lwork, integer *iwork, integer *liwork, logical *bwork, integer *info);
-
-/* Subroutine */ int dgeev_(char *jobvl, char *jobvr, integer *n, doublereal *
- a, integer *lda, doublereal *wr, doublereal *wi, doublereal *vl,
- integer *ldvl, doublereal *vr, integer *ldvr, doublereal *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int dgeevx_(char *balanc, char *jobvl, char *jobvr, char *
- sense, integer *n, doublereal *a, integer *lda, doublereal *wr,
- doublereal *wi, doublereal *vl, integer *ldvl, doublereal *vr,
- integer *ldvr, integer *ilo, integer *ihi, doublereal *scale,
- doublereal *abnrm, doublereal *rconde, doublereal *rcondv, doublereal
- *work, integer *lwork, integer *iwork, integer *info);
-
-/* Subroutine */ int dgegs_(char *jobvsl, char *jobvsr, integer *n,
- doublereal *a, integer *lda, doublereal *b, integer *ldb, doublereal *
- alphar, doublereal *alphai, doublereal *beta, doublereal *vsl,
- integer *ldvsl, doublereal *vsr, integer *ldvsr, doublereal *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int dgegv_(char *jobvl, char *jobvr, integer *n, doublereal *
- a, integer *lda, doublereal *b, integer *ldb, doublereal *alphar,
- doublereal *alphai, doublereal *beta, doublereal *vl, integer *ldvl,
- doublereal *vr, integer *ldvr, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dgehd2_(integer *n, integer *ilo, integer *ihi,
- doublereal *a, integer *lda, doublereal *tau, doublereal *work,
- integer *info);
-
-/* Subroutine */ int dgehrd_(integer *n, integer *ilo, integer *ihi,
- doublereal *a, integer *lda, doublereal *tau, doublereal *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int dgelq2_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *tau, doublereal *work, integer *info);
-
-/* Subroutine */ int dgelqf_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *tau, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dgels_(char *trans, integer *m, integer *n, integer *
- nrhs, doublereal *a, integer *lda, doublereal *b, integer *ldb,
- doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dgelsd_(integer *m, integer *n, integer *nrhs,
- doublereal *a, integer *lda, doublereal *b, integer *ldb, doublereal *
- s, doublereal *rcond, integer *rank, doublereal *work, integer *lwork,
- integer *iwork, integer *info);
-
-/* Subroutine */ int dgelss_(integer *m, integer *n, integer *nrhs,
- doublereal *a, integer *lda, doublereal *b, integer *ldb, doublereal *
- s, doublereal *rcond, integer *rank, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dgelsx_(integer *m, integer *n, integer *nrhs,
- doublereal *a, integer *lda, doublereal *b, integer *ldb, integer *
- jpvt, doublereal *rcond, integer *rank, doublereal *work, integer *
- info);
-
-/* Subroutine */ int dgelsy_(integer *m, integer *n, integer *nrhs,
- doublereal *a, integer *lda, doublereal *b, integer *ldb, integer *
- jpvt, doublereal *rcond, integer *rank, doublereal *work, integer *
- lwork, integer *info);
-
-/* Subroutine */ int dgeql2_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *tau, doublereal *work, integer *info);
-
-/* Subroutine */ int dgeqlf_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *tau, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dgeqp3_(integer *m, integer *n, doublereal *a, integer *
- lda, integer *jpvt, doublereal *tau, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dgeqpf_(integer *m, integer *n, doublereal *a, integer *
- lda, integer *jpvt, doublereal *tau, doublereal *work, integer *info);
-
-/* Subroutine */ int dgeqr2_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *tau, doublereal *work, integer *info);
-
-/* Subroutine */ int dgeqrf_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *tau, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dgerfs_(char *trans, integer *n, integer *nrhs,
- doublereal *a, integer *lda, doublereal *af, integer *ldaf, integer *
- ipiv, doublereal *b, integer *ldb, doublereal *x, integer *ldx,
- doublereal *ferr, doublereal *berr, doublereal *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int dgerq2_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *tau, doublereal *work, integer *info);
-
-/* Subroutine */ int dgerqf_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *tau, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dgesc2_(integer *n, doublereal *a, integer *lda,
- doublereal *rhs, integer *ipiv, integer *jpiv, doublereal *scale);
-
-/* Subroutine */ int dgesdd_(char *jobz, integer *m, integer *n, doublereal *
- a, integer *lda, doublereal *s, doublereal *u, integer *ldu,
- doublereal *vt, integer *ldvt, doublereal *work, integer *lwork,
- integer *iwork, integer *info);
-
-/* Subroutine */ int dgesv_(integer *n, integer *nrhs, doublereal *a, integer
- *lda, integer *ipiv, doublereal *b, integer *ldb, integer *info);
-
-/* Subroutine */ int dgesvd_(char *jobu, char *jobvt, integer *m, integer *n,
- doublereal *a, integer *lda, doublereal *s, doublereal *u, integer *
- ldu, doublereal *vt, integer *ldvt, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dgesvx_(char *fact, char *trans, integer *n, integer *
- nrhs, doublereal *a, integer *lda, doublereal *af, integer *ldaf,
- integer *ipiv, char *equed, doublereal *r__, doublereal *c__,
- doublereal *b, integer *ldb, doublereal *x, integer *ldx, doublereal *
- rcond, doublereal *ferr, doublereal *berr, doublereal *work, integer *
- iwork, integer *info);
-
-/* Subroutine */ int dgetc2_(integer *n, doublereal *a, integer *lda, integer
- *ipiv, integer *jpiv, integer *info);
-
-/* Subroutine */ int dgetf2_(integer *m, integer *n, doublereal *a, integer *
- lda, integer *ipiv, integer *info);
-
-/* Subroutine */ int dgetrf_(integer *m, integer *n, doublereal *a, integer *
- lda, integer *ipiv, integer *info);
-
-/* Subroutine */ int dgetri_(integer *n, doublereal *a, integer *lda, integer
- *ipiv, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dgetrs_(char *trans, integer *n, integer *nrhs,
- doublereal *a, integer *lda, integer *ipiv, doublereal *b, integer *
- ldb, integer *info);
-
-/* Subroutine */ int dggbak_(char *job, char *side, integer *n, integer *ilo,
- integer *ihi, doublereal *lscale, doublereal *rscale, integer *m,
- doublereal *v, integer *ldv, integer *info);
-
-/* Subroutine */ int dggbal_(char *job, integer *n, doublereal *a, integer *
- lda, doublereal *b, integer *ldb, integer *ilo, integer *ihi,
- doublereal *lscale, doublereal *rscale, doublereal *work, integer *
- info);
-
-/* Subroutine */ int dgges_(char *jobvsl, char *jobvsr, char *sort, L_fp
- delctg, integer *n, doublereal *a, integer *lda, doublereal *b,
- integer *ldb, integer *sdim, doublereal *alphar, doublereal *alphai,
- doublereal *beta, doublereal *vsl, integer *ldvsl, doublereal *vsr,
- integer *ldvsr, doublereal *work, integer *lwork, logical *bwork,
- integer *info);
-
-/* Subroutine */ int dggesx_(char *jobvsl, char *jobvsr, char *sort, L_fp
- delctg, char *sense, integer *n, doublereal *a, integer *lda,
- doublereal *b, integer *ldb, integer *sdim, doublereal *alphar,
- doublereal *alphai, doublereal *beta, doublereal *vsl, integer *ldvsl,
- doublereal *vsr, integer *ldvsr, doublereal *rconde, doublereal *
- rcondv, doublereal *work, integer *lwork, integer *iwork, integer *
- liwork, logical *bwork, integer *info);
-
-/* Subroutine */ int dggev_(char *jobvl, char *jobvr, integer *n, doublereal *
- a, integer *lda, doublereal *b, integer *ldb, doublereal *alphar,
- doublereal *alphai, doublereal *beta, doublereal *vl, integer *ldvl,
- doublereal *vr, integer *ldvr, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dggevx_(char *balanc, char *jobvl, char *jobvr, char *
- sense, integer *n, doublereal *a, integer *lda, doublereal *b,
- integer *ldb, doublereal *alphar, doublereal *alphai, doublereal *
- beta, doublereal *vl, integer *ldvl, doublereal *vr, integer *ldvr,
- integer *ilo, integer *ihi, doublereal *lscale, doublereal *rscale,
- doublereal *abnrm, doublereal *bbnrm, doublereal *rconde, doublereal *
- rcondv, doublereal *work, integer *lwork, integer *iwork, logical *
- bwork, integer *info);
-
-/* Subroutine */ int dggglm_(integer *n, integer *m, integer *p, doublereal *
- a, integer *lda, doublereal *b, integer *ldb, doublereal *d__,
- doublereal *x, doublereal *y, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dgghrd_(char *compq, char *compz, integer *n, integer *
- ilo, integer *ihi, doublereal *a, integer *lda, doublereal *b,
- integer *ldb, doublereal *q, integer *ldq, doublereal *z__, integer *
- ldz, integer *info);
-
-/* Subroutine */ int dgglse_(integer *m, integer *n, integer *p, doublereal *
- a, integer *lda, doublereal *b, integer *ldb, doublereal *c__,
- doublereal *d__, doublereal *x, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dggqrf_(integer *n, integer *m, integer *p, doublereal *
- a, integer *lda, doublereal *taua, doublereal *b, integer *ldb,
- doublereal *taub, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dggrqf_(integer *m, integer *p, integer *n, doublereal *
- a, integer *lda, doublereal *taua, doublereal *b, integer *ldb,
- doublereal *taub, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dggsvd_(char *jobu, char *jobv, char *jobq, integer *m,
- integer *n, integer *p, integer *k, integer *l, doublereal *a,
- integer *lda, doublereal *b, integer *ldb, doublereal *alpha,
- doublereal *beta, doublereal *u, integer *ldu, doublereal *v, integer
- *ldv, doublereal *q, integer *ldq, doublereal *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int dggsvp_(char *jobu, char *jobv, char *jobq, integer *m,
- integer *p, integer *n, doublereal *a, integer *lda, doublereal *b,
- integer *ldb, doublereal *tola, doublereal *tolb, integer *k, integer
- *l, doublereal *u, integer *ldu, doublereal *v, integer *ldv,
- doublereal *q, integer *ldq, integer *iwork, doublereal *tau,
- doublereal *work, integer *info);
-
-/* Subroutine */ int dgtcon_(char *norm, integer *n, doublereal *dl,
- doublereal *d__, doublereal *du, doublereal *du2, integer *ipiv,
- doublereal *anorm, doublereal *rcond, doublereal *work, integer *
- iwork, integer *info);
-
-/* Subroutine */ int dgtrfs_(char *trans, integer *n, integer *nrhs,
- doublereal *dl, doublereal *d__, doublereal *du, doublereal *dlf,
- doublereal *df, doublereal *duf, doublereal *du2, integer *ipiv,
- doublereal *b, integer *ldb, doublereal *x, integer *ldx, doublereal *
- ferr, doublereal *berr, doublereal *work, integer *iwork, integer *
- info);
-
-/* Subroutine */ int dgtsv_(integer *n, integer *nrhs, doublereal *dl,
- doublereal *d__, doublereal *du, doublereal *b, integer *ldb, integer
- *info);
-
-/* Subroutine */ int dgtsvx_(char *fact, char *trans, integer *n, integer *
- nrhs, doublereal *dl, doublereal *d__, doublereal *du, doublereal *
- dlf, doublereal *df, doublereal *duf, doublereal *du2, integer *ipiv,
- doublereal *b, integer *ldb, doublereal *x, integer *ldx, doublereal *
- rcond, doublereal *ferr, doublereal *berr, doublereal *work, integer *
- iwork, integer *info);
-
-/* Subroutine */ int dgttrf_(integer *n, doublereal *dl, doublereal *d__,
- doublereal *du, doublereal *du2, integer *ipiv, integer *info);
-
-/* Subroutine */ int dgttrs_(char *trans, integer *n, integer *nrhs,
- doublereal *dl, doublereal *d__, doublereal *du, doublereal *du2,
- integer *ipiv, doublereal *b, integer *ldb, integer *info);
-
-/* Subroutine */ int dgtts2_(integer *itrans, integer *n, integer *nrhs,
- doublereal *dl, doublereal *d__, doublereal *du, doublereal *du2,
- integer *ipiv, doublereal *b, integer *ldb);
-
-/* Subroutine */ int dhgeqz_(char *job, char *compq, char *compz, integer *n,
- integer *ilo, integer *ihi, doublereal *a, integer *lda, doublereal *
- b, integer *ldb, doublereal *alphar, doublereal *alphai, doublereal *
- beta, doublereal *q, integer *ldq, doublereal *z__, integer *ldz,
- doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dhsein_(char *side, char *eigsrc, char *initv, logical *
- select, integer *n, doublereal *h__, integer *ldh, doublereal *wr,
- doublereal *wi, doublereal *vl, integer *ldvl, doublereal *vr,
- integer *ldvr, integer *mm, integer *m, doublereal *work, integer *
- ifaill, integer *ifailr, integer *info);
-
-/* Subroutine */ int dhseqr_(char *job, char *compz, integer *n, integer *ilo,
- integer *ihi, doublereal *h__, integer *ldh, doublereal *wr,
- doublereal *wi, doublereal *z__, integer *ldz, doublereal *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int dlabad_(doublereal *small, doublereal *large);
-
-/* Subroutine */ int dlabrd_(integer *m, integer *n, integer *nb, doublereal *
- a, integer *lda, doublereal *d__, doublereal *e, doublereal *tauq,
- doublereal *taup, doublereal *x, integer *ldx, doublereal *y, integer
- *ldy);
-
-/* Subroutine */ int dlacon_(integer *n, doublereal *v, doublereal *x,
- integer *isgn, doublereal *est, integer *kase);
-
-/* Subroutine */ int dlacpy_(char *uplo, integer *m, integer *n, doublereal *
- a, integer *lda, doublereal *b, integer *ldb);
-
-/* Subroutine */ int dladiv_(doublereal *a, doublereal *b, doublereal *c__,
- doublereal *d__, doublereal *p, doublereal *q);
-
-/* Subroutine */ int dlae2_(doublereal *a, doublereal *b, doublereal *c__,
- doublereal *rt1, doublereal *rt2);
-
-/* Subroutine */ int dlaebz_(integer *ijob, integer *nitmax, integer *n,
- integer *mmax, integer *minp, integer *nbmin, doublereal *abstol,
- doublereal *reltol, doublereal *pivmin, doublereal *d__, doublereal *
- e, doublereal *e2, integer *nval, doublereal *ab, doublereal *c__,
- integer *mout, integer *nab, doublereal *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int dlaed0_(integer *icompq, integer *qsiz, integer *n,
- doublereal *d__, doublereal *e, doublereal *q, integer *ldq,
- doublereal *qstore, integer *ldqs, doublereal *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int dlaed1_(integer *n, doublereal *d__, doublereal *q,
- integer *ldq, integer *indxq, doublereal *rho, integer *cutpnt,
- doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dlaed2_(integer *k, integer *n, integer *n1, doublereal *
- d__, doublereal *q, integer *ldq, integer *indxq, doublereal *rho,
- doublereal *z__, doublereal *dlamda, doublereal *w, doublereal *q2,
- integer *indx, integer *indxc, integer *indxp, integer *coltyp,
- integer *info);
-
-/* Subroutine */ int dlaed3_(integer *k, integer *n, integer *n1, doublereal *
- d__, doublereal *q, integer *ldq, doublereal *rho, doublereal *dlamda,
- doublereal *q2, integer *indx, integer *ctot, doublereal *w,
- doublereal *s, integer *info);
-
-/* Subroutine */ int dlaed4_(integer *n, integer *i__, doublereal *d__,
- doublereal *z__, doublereal *delta, doublereal *rho, doublereal *dlam,
- integer *info);
-
-/* Subroutine */ int dlaed5_(integer *i__, doublereal *d__, doublereal *z__,
- doublereal *delta, doublereal *rho, doublereal *dlam);
-
-/* Subroutine */ int dlaed6_(integer *kniter, logical *orgati, doublereal *
- rho, doublereal *d__, doublereal *z__, doublereal *finit, doublereal *
- tau, integer *info);
-
-/* Subroutine */ int dlaed7_(integer *icompq, integer *n, integer *qsiz,
- integer *tlvls, integer *curlvl, integer *curpbm, doublereal *d__,
- doublereal *q, integer *ldq, integer *indxq, doublereal *rho, integer
- *cutpnt, doublereal *qstore, integer *qptr, integer *prmptr, integer *
- perm, integer *givptr, integer *givcol, doublereal *givnum,
- doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dlaed8_(integer *icompq, integer *k, integer *n, integer
- *qsiz, doublereal *d__, doublereal *q, integer *ldq, integer *indxq,
- doublereal *rho, integer *cutpnt, doublereal *z__, doublereal *dlamda,
- doublereal *q2, integer *ldq2, doublereal *w, integer *perm, integer
- *givptr, integer *givcol, doublereal *givnum, integer *indxp, integer
- *indx, integer *info);
-
-/* Subroutine */ int dlaed9_(integer *k, integer *kstart, integer *kstop,
- integer *n, doublereal *d__, doublereal *q, integer *ldq, doublereal *
- rho, doublereal *dlamda, doublereal *w, doublereal *s, integer *lds,
- integer *info);
-
-/* Subroutine */ int dlaeda_(integer *n, integer *tlvls, integer *curlvl,
- integer *curpbm, integer *prmptr, integer *perm, integer *givptr,
- integer *givcol, doublereal *givnum, doublereal *q, integer *qptr,
- doublereal *z__, doublereal *ztemp, integer *info);
-
-/* Subroutine */ int dlaein_(logical *rightv, logical *noinit, integer *n,
- doublereal *h__, integer *ldh, doublereal *wr, doublereal *wi,
- doublereal *vr, doublereal *vi, doublereal *b, integer *ldb,
- doublereal *work, doublereal *eps3, doublereal *smlnum, doublereal *
- bignum, integer *info);
-
-/* Subroutine */ int dlaev2_(doublereal *a, doublereal *b, doublereal *c__,
- doublereal *rt1, doublereal *rt2, doublereal *cs1, doublereal *sn1);
-
-/* Subroutine */ int dlaexc_(logical *wantq, integer *n, doublereal *t,
- integer *ldt, doublereal *q, integer *ldq, integer *j1, integer *n1,
- integer *n2, doublereal *work, integer *info);
-
-/* Subroutine */ int dlag2_(doublereal *a, integer *lda, doublereal *b,
- integer *ldb, doublereal *safmin, doublereal *scale1, doublereal *
- scale2, doublereal *wr1, doublereal *wr2, doublereal *wi);
-
-/* Subroutine */ int dlags2_(logical *upper, doublereal *a1, doublereal *a2,
- doublereal *a3, doublereal *b1, doublereal *b2, doublereal *b3,
- doublereal *csu, doublereal *snu, doublereal *csv, doublereal *snv,
- doublereal *csq, doublereal *snq);
-
-/* Subroutine */ int dlagtf_(integer *n, doublereal *a, doublereal *lambda,
- doublereal *b, doublereal *c__, doublereal *tol, doublereal *d__,
- integer *in, integer *info);
-
-/* Subroutine */ int dlagtm_(char *trans, integer *n, integer *nrhs,
- doublereal *alpha, doublereal *dl, doublereal *d__, doublereal *du,
- doublereal *x, integer *ldx, doublereal *beta, doublereal *b, integer
- *ldb);
-
-/* Subroutine */ int dlagts_(integer *job, integer *n, doublereal *a,
- doublereal *b, doublereal *c__, doublereal *d__, integer *in,
- doublereal *y, doublereal *tol, integer *info);
-
-/* Subroutine */ int dlagv2_(doublereal *a, integer *lda, doublereal *b,
- integer *ldb, doublereal *alphar, doublereal *alphai, doublereal *
- beta, doublereal *csl, doublereal *snl, doublereal *csr, doublereal *
- snr);
-
-/* Subroutine */ int dlahqr_(logical *wantt, logical *wantz, integer *n,
- integer *ilo, integer *ihi, doublereal *h__, integer *ldh, doublereal
- *wr, doublereal *wi, integer *iloz, integer *ihiz, doublereal *z__,
- integer *ldz, integer *info);
-
-/* Subroutine */ int dlahrd_(integer *n, integer *k, integer *nb, doublereal *
- a, integer *lda, doublereal *tau, doublereal *t, integer *ldt,
- doublereal *y, integer *ldy);
-
-/* Subroutine */ int dlaic1_(integer *job, integer *j, doublereal *x,
- doublereal *sest, doublereal *w, doublereal *gamma, doublereal *
- sestpr, doublereal *s, doublereal *c__);
-
-/* Subroutine */ int dlaln2_(logical *ltrans, integer *na, integer *nw,
- doublereal *smin, doublereal *ca, doublereal *a, integer *lda,
- doublereal *d1, doublereal *d2, doublereal *b, integer *ldb,
- doublereal *wr, doublereal *wi, doublereal *x, integer *ldx,
- doublereal *scale, doublereal *xnorm, integer *info);
-
-/* Subroutine */ int dlals0_(integer *icompq, integer *nl, integer *nr,
- integer *sqre, integer *nrhs, doublereal *b, integer *ldb, doublereal
- *bx, integer *ldbx, integer *perm, integer *givptr, integer *givcol,
- integer *ldgcol, doublereal *givnum, integer *ldgnum, doublereal *
- poles, doublereal *difl, doublereal *difr, doublereal *z__, integer *
- k, doublereal *c__, doublereal *s, doublereal *work, integer *info);
-
-/* Subroutine */ int dlalsa_(integer *icompq, integer *smlsiz, integer *n,
- integer *nrhs, doublereal *b, integer *ldb, doublereal *bx, integer *
- ldbx, doublereal *u, integer *ldu, doublereal *vt, integer *k,
- doublereal *difl, doublereal *difr, doublereal *z__, doublereal *
- poles, integer *givptr, integer *givcol, integer *ldgcol, integer *
- perm, doublereal *givnum, doublereal *c__, doublereal *s, doublereal *
- work, integer *iwork, integer *info);
-
-/* Subroutine */ int dlalsd_(char *uplo, integer *smlsiz, integer *n, integer
- *nrhs, doublereal *d__, doublereal *e, doublereal *b, integer *ldb,
- doublereal *rcond, integer *rank, doublereal *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int dlamc1_(integer *beta, integer *t, logical *rnd, logical
- *ieee1);
-
-/* Subroutine */ int dlamc2_(integer *beta, integer *t, logical *rnd,
- doublereal *eps, integer *emin, doublereal *rmin, integer *emax,
- doublereal *rmax);
-
-/* Subroutine */ int dlamc4_(integer *emin, doublereal *start, integer *base);
-
-/* Subroutine */ int dlamc5_(integer *beta, integer *p, integer *emin,
- logical *ieee, integer *emax, doublereal *rmax);
-
-/* Subroutine */ int dlamrg_(integer *n1, integer *n2, doublereal *a, integer
- *dtrd1, integer *dtrd2, integer *index);
-
-/* Subroutine */ int dlanv2_(doublereal *a, doublereal *b, doublereal *c__,
- doublereal *d__, doublereal *rt1r, doublereal *rt1i, doublereal *rt2r,
- doublereal *rt2i, doublereal *cs, doublereal *sn);
-
-/* Subroutine */ int dlapll_(integer *n, doublereal *x, integer *incx,
- doublereal *y, integer *incy, doublereal *ssmin);
-
-/* Subroutine */ int dlapmt_(logical *forwrd, integer *m, integer *n,
- doublereal *x, integer *ldx, integer *k);
-
-/* Subroutine */ int dlaqgb_(integer *m, integer *n, integer *kl, integer *ku,
- doublereal *ab, integer *ldab, doublereal *r__, doublereal *c__,
- doublereal *rowcnd, doublereal *colcnd, doublereal *amax, char *equed);
-
-/* Subroutine */ int dlaqge_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *r__, doublereal *c__, doublereal *rowcnd, doublereal
- *colcnd, doublereal *amax, char *equed);
-
-/* Subroutine */ int dlaqp2_(integer *m, integer *n, integer *offset,
- doublereal *a, integer *lda, integer *jpvt, doublereal *tau,
- doublereal *vn1, doublereal *vn2, doublereal *work);
-
-/* Subroutine */ int dlaqps_(integer *m, integer *n, integer *offset, integer
- *nb, integer *kb, doublereal *a, integer *lda, integer *jpvt,
- doublereal *tau, doublereal *vn1, doublereal *vn2, doublereal *auxv,
- doublereal *f, integer *ldf);
-
-/* Subroutine */ int dlaqsb_(char *uplo, integer *n, integer *kd, doublereal *
- ab, integer *ldab, doublereal *s, doublereal *scond, doublereal *amax,
- char *equed);
-
-/* Subroutine */ int dlaqsp_(char *uplo, integer *n, doublereal *ap,
- doublereal *s, doublereal *scond, doublereal *amax, char *equed);
-
-/* Subroutine */ int dlaqsy_(char *uplo, integer *n, doublereal *a, integer *
- lda, doublereal *s, doublereal *scond, doublereal *amax, char *equed);
-
-/* Subroutine */ int dlaqtr_(logical *ltran, logical *lreal, integer *n,
- doublereal *t, integer *ldt, doublereal *b, doublereal *w, doublereal
- *scale, doublereal *x, doublereal *work, integer *info);
-
-/* Subroutine */ int dlar1v_(integer *n, integer *b1, integer *bn, doublereal
- *sigma, doublereal *d__, doublereal *l, doublereal *ld, doublereal *
- lld, doublereal *gersch, doublereal *z__, doublereal *ztz, doublereal
- *mingma, integer *r__, integer *isuppz, doublereal *work);
-
-/* Subroutine */ int dlar2v_(integer *n, doublereal *x, doublereal *y,
- doublereal *z__, integer *incx, doublereal *c__, doublereal *s,
- integer *incc);
-
-/* Subroutine */ int dlarf_(char *side, integer *m, integer *n, doublereal *v,
- integer *incv, doublereal *tau, doublereal *c__, integer *ldc,
- doublereal *work);
-
-/* Subroutine */ int dlarfb_(char *side, char *trans, char *direct, char *
- storev, integer *m, integer *n, integer *k, doublereal *v, integer *
- ldv, doublereal *t, integer *ldt, doublereal *c__, integer *ldc,
- doublereal *work, integer *ldwork);
-
-/* Subroutine */ int dlarfg_(integer *n, doublereal *alpha, doublereal *x,
- integer *incx, doublereal *tau);
-
-/* Subroutine */ int dlarft_(char *direct, char *storev, integer *n, integer *
- k, doublereal *v, integer *ldv, doublereal *tau, doublereal *t,
- integer *ldt);
-
-/* Subroutine */ int dlarfx_(char *side, integer *m, integer *n, doublereal *
- v, doublereal *tau, doublereal *c__, integer *ldc, doublereal *work);
-
-/* Subroutine */ int dlargv_(integer *n, doublereal *x, integer *incx,
- doublereal *y, integer *incy, doublereal *c__, integer *incc);
-
-/* Subroutine */ int dlarnv_(integer *idist, integer *iseed, integer *n,
- doublereal *x);
-
-/* Subroutine */ int dlarrb_(integer *n, doublereal *d__, doublereal *l,
- doublereal *ld, doublereal *lld, integer *ifirst, integer *ilast,
- doublereal *sigma, doublereal *reltol, doublereal *w, doublereal *
- wgap, doublereal *werr, doublereal *work, integer *iwork, integer *
- info);
-
-/* Subroutine */ int dlarre_(integer *n, doublereal *d__, doublereal *e,
- doublereal *tol, integer *nsplit, integer *isplit, integer *m,
- doublereal *w, doublereal *woff, doublereal *gersch, doublereal *work,
- integer *info);
-
-/* Subroutine */ int dlarrf_(integer *n, doublereal *d__, doublereal *l,
- doublereal *ld, doublereal *lld, integer *ifirst, integer *ilast,
- doublereal *w, doublereal *dplus, doublereal *lplus, doublereal *work,
- integer *iwork, integer *info);
-
-/* Subroutine */ int dlarrv_(integer *n, doublereal *d__, doublereal *l,
- integer *isplit, integer *m, doublereal *w, integer *iblock,
- doublereal *gersch, doublereal *tol, doublereal *z__, integer *ldz,
- integer *isuppz, doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dlartg_(doublereal *f, doublereal *g, doublereal *cs,
- doublereal *sn, doublereal *r__);
-
-/* Subroutine */ int dlartv_(integer *n, doublereal *x, integer *incx,
- doublereal *y, integer *incy, doublereal *c__, doublereal *s, integer
- *incc);
-
-/* Subroutine */ int dlaruv_(integer *iseed, integer *n, doublereal *x);
-
-/* Subroutine */ int dlarz_(char *side, integer *m, integer *n, integer *l,
- doublereal *v, integer *incv, doublereal *tau, doublereal *c__,
- integer *ldc, doublereal *work);
-
-/* Subroutine */ int dlarzb_(char *side, char *trans, char *direct, char *
- storev, integer *m, integer *n, integer *k, integer *l, doublereal *v,
- integer *ldv, doublereal *t, integer *ldt, doublereal *c__, integer *
- ldc, doublereal *work, integer *ldwork);
-
-/* Subroutine */ int dlarzt_(char *direct, char *storev, integer *n, integer *
- k, doublereal *v, integer *ldv, doublereal *tau, doublereal *t,
- integer *ldt);
-
-/* Subroutine */ int dlas2_(doublereal *f, doublereal *g, doublereal *h__,
- doublereal *ssmin, doublereal *ssmax);
-
-/* Subroutine */ int dlascl_(char *type__, integer *kl, integer *ku,
- doublereal *cfrom, doublereal *cto, integer *m, integer *n,
- doublereal *a, integer *lda, integer *info);
-
-/* Subroutine */ int dlasd0_(integer *n, integer *sqre, doublereal *d__,
- doublereal *e, doublereal *u, integer *ldu, doublereal *vt, integer *
- ldvt, integer *smlsiz, integer *iwork, doublereal *work, integer *
- info);
-
-/* Subroutine */ int dlasd1_(integer *nl, integer *nr, integer *sqre,
- doublereal *d__, doublereal *alpha, doublereal *beta, doublereal *u,
- integer *ldu, doublereal *vt, integer *ldvt, integer *idxq, integer *
- iwork, doublereal *work, integer *info);
-
-/* Subroutine */ int dlasd2_(integer *nl, integer *nr, integer *sqre, integer
- *k, doublereal *d__, doublereal *z__, doublereal *alpha, doublereal *
- beta, doublereal *u, integer *ldu, doublereal *vt, integer *ldvt,
- doublereal *dsigma, doublereal *u2, integer *ldu2, doublereal *vt2,
- integer *ldvt2, integer *idxp, integer *idx, integer *idxc, integer *
- idxq, integer *coltyp, integer *info);
-
-/* Subroutine */ int dlasd3_(integer *nl, integer *nr, integer *sqre, integer
- *k, doublereal *d__, doublereal *q, integer *ldq, doublereal *dsigma,
- doublereal *u, integer *ldu, doublereal *u2, integer *ldu2,
- doublereal *vt, integer *ldvt, doublereal *vt2, integer *ldvt2,
- integer *idxc, integer *ctot, doublereal *z__, integer *info);
-
-/* Subroutine */ int dlasd4_(integer *n, integer *i__, doublereal *d__,
- doublereal *z__, doublereal *delta, doublereal *rho, doublereal *
- sigma, doublereal *work, integer *info);
-
-/* Subroutine */ int dlasd5_(integer *i__, doublereal *d__, doublereal *z__,
- doublereal *delta, doublereal *rho, doublereal *dsigma, doublereal *
- work);
-
-/* Subroutine */ int dlasd6_(integer *icompq, integer *nl, integer *nr,
- integer *sqre, doublereal *d__, doublereal *vf, doublereal *vl,
- doublereal *alpha, doublereal *beta, integer *idxq, integer *perm,
- integer *givptr, integer *givcol, integer *ldgcol, doublereal *givnum,
- integer *ldgnum, doublereal *poles, doublereal *difl, doublereal *
- difr, doublereal *z__, integer *k, doublereal *c__, doublereal *s,
- doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dlasd7_(integer *icompq, integer *nl, integer *nr,
- integer *sqre, integer *k, doublereal *d__, doublereal *z__,
- doublereal *zw, doublereal *vf, doublereal *vfw, doublereal *vl,
- doublereal *vlw, doublereal *alpha, doublereal *beta, doublereal *
- dsigma, integer *idx, integer *idxp, integer *idxq, integer *perm,
- integer *givptr, integer *givcol, integer *ldgcol, doublereal *givnum,
- integer *ldgnum, doublereal *c__, doublereal *s, integer *info);
-
-/* Subroutine */ int dlasd8_(integer *icompq, integer *k, doublereal *d__,
- doublereal *z__, doublereal *vf, doublereal *vl, doublereal *difl,
- doublereal *difr, integer *lddifr, doublereal *dsigma, doublereal *
- work, integer *info);
-
-/* Subroutine */ int dlasd9_(integer *icompq, integer *ldu, integer *k,
- doublereal *d__, doublereal *z__, doublereal *vf, doublereal *vl,
- doublereal *difl, doublereal *difr, doublereal *dsigma, doublereal *
- work, integer *info);
-
-/* Subroutine */ int dlasda_(integer *icompq, integer *smlsiz, integer *n,
- integer *sqre, doublereal *d__, doublereal *e, doublereal *u, integer
- *ldu, doublereal *vt, integer *k, doublereal *difl, doublereal *difr,
- doublereal *z__, doublereal *poles, integer *givptr, integer *givcol,
- integer *ldgcol, integer *perm, doublereal *givnum, doublereal *c__,
- doublereal *s, doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dlasdq_(char *uplo, integer *sqre, integer *n, integer *
- ncvt, integer *nru, integer *ncc, doublereal *d__, doublereal *e,
- doublereal *vt, integer *ldvt, doublereal *u, integer *ldu,
- doublereal *c__, integer *ldc, doublereal *work, integer *info);
-
-/* Subroutine */ int dlasdt_(integer *n, integer *lvl, integer *nd, integer *
- inode, integer *ndiml, integer *ndimr, integer *msub);
-
-/* Subroutine */ int dlaset_(char *uplo, integer *m, integer *n, doublereal *
- alpha, doublereal *beta, doublereal *a, integer *lda);
-
-/* Subroutine */ int dlasq1_(integer *n, doublereal *d__, doublereal *e,
- doublereal *work, integer *info);
-
-/* Subroutine */ int dlasq2_(integer *n, doublereal *z__, integer *info);
-
-/* Subroutine */ int dlasq3_(integer *i0, integer *n0, doublereal *z__,
- integer *pp, doublereal *dmin__, doublereal *sigma, doublereal *desig,
- doublereal *qmax, integer *nfail, integer *iter, integer *ndiv,
- logical *ieee);
-
-/* Subroutine */ int dlasq4_(integer *i0, integer *n0, doublereal *z__,
- integer *pp, integer *n0in, doublereal *dmin__, doublereal *dmin1,
- doublereal *dmin2, doublereal *dn, doublereal *dn1, doublereal *dn2,
- doublereal *tau, integer *ttype);
-
-/* Subroutine */ int dlasq5_(integer *i0, integer *n0, doublereal *z__,
- integer *pp, doublereal *tau, doublereal *dmin__, doublereal *dmin1,
- doublereal *dmin2, doublereal *dn, doublereal *dnm1, doublereal *dnm2,
- logical *ieee);
-
-/* Subroutine */ int dlasq6_(integer *i0, integer *n0, doublereal *z__,
- integer *pp, doublereal *dmin__, doublereal *dmin1, doublereal *dmin2,
- doublereal *dn, doublereal *dnm1, doublereal *dnm2);
-
-/* Subroutine */ int dlasr_(char *side, char *pivot, char *direct, integer *m,
- integer *n, doublereal *c__, doublereal *s, doublereal *a, integer *
- lda);
-
-/* Subroutine */ int dlasrt_(char *id, integer *n, doublereal *d__, integer *
- info);
-
-/* Subroutine */ int dlassq_(integer *n, doublereal *x, integer *incx,
- doublereal *scale, doublereal *sumsq);
-
-/* Subroutine */ int dlasv2_(doublereal *f, doublereal *g, doublereal *h__,
- doublereal *ssmin, doublereal *ssmax, doublereal *snr, doublereal *
- csr, doublereal *snl, doublereal *csl);
-
-/* Subroutine */ int dlaswp_(integer *n, doublereal *a, integer *lda, integer
- *k1, integer *k2, integer *ipiv, integer *incx);
-
-/* Subroutine */ int dlasy2_(logical *ltranl, logical *ltranr, integer *isgn,
- integer *n1, integer *n2, doublereal *tl, integer *ldtl, doublereal *
- tr, integer *ldtr, doublereal *b, integer *ldb, doublereal *scale,
- doublereal *x, integer *ldx, doublereal *xnorm, integer *info);
-
-/* Subroutine */ int dlasyf_(char *uplo, integer *n, integer *nb, integer *kb,
- doublereal *a, integer *lda, integer *ipiv, doublereal *w, integer *
- ldw, integer *info);
-
-/* Subroutine */ int dlatbs_(char *uplo, char *trans, char *diag, char *
- normin, integer *n, integer *kd, doublereal *ab, integer *ldab,
- doublereal *x, doublereal *scale, doublereal *cnorm, integer *info);
-
-/* Subroutine */ int dlatdf_(integer *ijob, integer *n, doublereal *z__,
- integer *ldz, doublereal *rhs, doublereal *rdsum, doublereal *rdscal,
- integer *ipiv, integer *jpiv);
-
-/* Subroutine */ int dlatps_(char *uplo, char *trans, char *diag, char *
- normin, integer *n, doublereal *ap, doublereal *x, doublereal *scale,
- doublereal *cnorm, integer *info);
-
-/* Subroutine */ int dlatrd_(char *uplo, integer *n, integer *nb, doublereal *
- a, integer *lda, doublereal *e, doublereal *tau, doublereal *w,
- integer *ldw);
-
-/* Subroutine */ int dlatrs_(char *uplo, char *trans, char *diag, char *
- normin, integer *n, doublereal *a, integer *lda, doublereal *x,
- doublereal *scale, doublereal *cnorm, integer *info);
-
-/* Subroutine */ int dlatrz_(integer *m, integer *n, integer *l, doublereal *
- a, integer *lda, doublereal *tau, doublereal *work);
-
-/* Subroutine */ int dlatzm_(char *side, integer *m, integer *n, doublereal *
- v, integer *incv, doublereal *tau, doublereal *c1, doublereal *c2,
- integer *ldc, doublereal *work);
-
-/* Subroutine */ int dlauu2_(char *uplo, integer *n, doublereal *a, integer *
- lda, integer *info);
-
-/* Subroutine */ int dlauum_(char *uplo, integer *n, doublereal *a, integer *
- lda, integer *info);
-
-/* Subroutine */ int dopgtr_(char *uplo, integer *n, doublereal *ap,
- doublereal *tau, doublereal *q, integer *ldq, doublereal *work,
- integer *info);
-
-/* Subroutine */ int dopmtr_(char *side, char *uplo, char *trans, integer *m,
- integer *n, doublereal *ap, doublereal *tau, doublereal *c__, integer
- *ldc, doublereal *work, integer *info);
-
-/* Subroutine */ int dorg2l_(integer *m, integer *n, integer *k, doublereal *
- a, integer *lda, doublereal *tau, doublereal *work, integer *info);
-
-/* Subroutine */ int dorg2r_(integer *m, integer *n, integer *k, doublereal *
- a, integer *lda, doublereal *tau, doublereal *work, integer *info);
-
-/* Subroutine */ int dorgbr_(char *vect, integer *m, integer *n, integer *k,
- doublereal *a, integer *lda, doublereal *tau, doublereal *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int dorghr_(integer *n, integer *ilo, integer *ihi,
- doublereal *a, integer *lda, doublereal *tau, doublereal *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int dorgl2_(integer *m, integer *n, integer *k, doublereal *
- a, integer *lda, doublereal *tau, doublereal *work, integer *info);
-
-/* Subroutine */ int dorglq_(integer *m, integer *n, integer *k, doublereal *
- a, integer *lda, doublereal *tau, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dorgql_(integer *m, integer *n, integer *k, doublereal *
- a, integer *lda, doublereal *tau, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dorgqr_(integer *m, integer *n, integer *k, doublereal *
- a, integer *lda, doublereal *tau, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dorgr2_(integer *m, integer *n, integer *k, doublereal *
- a, integer *lda, doublereal *tau, doublereal *work, integer *info);
-
-/* Subroutine */ int dorgrq_(integer *m, integer *n, integer *k, doublereal *
- a, integer *lda, doublereal *tau, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dorgtr_(char *uplo, integer *n, doublereal *a, integer *
- lda, doublereal *tau, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dorm2l_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublereal *a, integer *lda, doublereal *tau, doublereal *
- c__, integer *ldc, doublereal *work, integer *info);
-
-/* Subroutine */ int dorm2r_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublereal *a, integer *lda, doublereal *tau, doublereal *
- c__, integer *ldc, doublereal *work, integer *info);
-
-/* Subroutine */ int dormbr_(char *vect, char *side, char *trans, integer *m,
- integer *n, integer *k, doublereal *a, integer *lda, doublereal *tau,
- doublereal *c__, integer *ldc, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dormhr_(char *side, char *trans, integer *m, integer *n,
- integer *ilo, integer *ihi, doublereal *a, integer *lda, doublereal *
- tau, doublereal *c__, integer *ldc, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dorml2_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublereal *a, integer *lda, doublereal *tau, doublereal *
- c__, integer *ldc, doublereal *work, integer *info);
-
-/* Subroutine */ int dormlq_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublereal *a, integer *lda, doublereal *tau, doublereal *
- c__, integer *ldc, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dormql_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublereal *a, integer *lda, doublereal *tau, doublereal *
- c__, integer *ldc, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dormqr_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublereal *a, integer *lda, doublereal *tau, doublereal *
- c__, integer *ldc, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dormr2_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublereal *a, integer *lda, doublereal *tau, doublereal *
- c__, integer *ldc, doublereal *work, integer *info);
-
-/* Subroutine */ int dormr3_(char *side, char *trans, integer *m, integer *n,
- integer *k, integer *l, doublereal *a, integer *lda, doublereal *tau,
- doublereal *c__, integer *ldc, doublereal *work, integer *info);
-
-/* Subroutine */ int dormrq_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublereal *a, integer *lda, doublereal *tau, doublereal *
- c__, integer *ldc, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dormrz_(char *side, char *trans, integer *m, integer *n,
- integer *k, integer *l, doublereal *a, integer *lda, doublereal *tau,
- doublereal *c__, integer *ldc, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dormtr_(char *side, char *uplo, char *trans, integer *m,
- integer *n, doublereal *a, integer *lda, doublereal *tau, doublereal *
- c__, integer *ldc, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dpbcon_(char *uplo, integer *n, integer *kd, doublereal *
- ab, integer *ldab, doublereal *anorm, doublereal *rcond, doublereal *
- work, integer *iwork, integer *info);
-
-/* Subroutine */ int dpbequ_(char *uplo, integer *n, integer *kd, doublereal *
- ab, integer *ldab, doublereal *s, doublereal *scond, doublereal *amax,
- integer *info);
-
-/* Subroutine */ int dpbrfs_(char *uplo, integer *n, integer *kd, integer *
- nrhs, doublereal *ab, integer *ldab, doublereal *afb, integer *ldafb,
- doublereal *b, integer *ldb, doublereal *x, integer *ldx, doublereal *
- ferr, doublereal *berr, doublereal *work, integer *iwork, integer *
- info);
-
-/* Subroutine */ int dpbstf_(char *uplo, integer *n, integer *kd, doublereal *
- ab, integer *ldab, integer *info);
-
-/* Subroutine */ int dpbsv_(char *uplo, integer *n, integer *kd, integer *
- nrhs, doublereal *ab, integer *ldab, doublereal *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int dpbsvx_(char *fact, char *uplo, integer *n, integer *kd,
- integer *nrhs, doublereal *ab, integer *ldab, doublereal *afb,
- integer *ldafb, char *equed, doublereal *s, doublereal *b, integer *
- ldb, doublereal *x, integer *ldx, doublereal *rcond, doublereal *ferr,
- doublereal *berr, doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dpbtf2_(char *uplo, integer *n, integer *kd, doublereal *
- ab, integer *ldab, integer *info);
-
-/* Subroutine */ int dpbtrf_(char *uplo, integer *n, integer *kd, doublereal *
- ab, integer *ldab, integer *info);
-
-/* Subroutine */ int dpbtrs_(char *uplo, integer *n, integer *kd, integer *
- nrhs, doublereal *ab, integer *ldab, doublereal *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int dpocon_(char *uplo, integer *n, doublereal *a, integer *
- lda, doublereal *anorm, doublereal *rcond, doublereal *work, integer *
- iwork, integer *info);
-
-/* Subroutine */ int dpoequ_(integer *n, doublereal *a, integer *lda,
- doublereal *s, doublereal *scond, doublereal *amax, integer *info);
-
-/* Subroutine */ int dporfs_(char *uplo, integer *n, integer *nrhs,
- doublereal *a, integer *lda, doublereal *af, integer *ldaf,
- doublereal *b, integer *ldb, doublereal *x, integer *ldx, doublereal *
- ferr, doublereal *berr, doublereal *work, integer *iwork, integer *
- info);
-
-/* Subroutine */ int dposv_(char *uplo, integer *n, integer *nrhs, doublereal
- *a, integer *lda, doublereal *b, integer *ldb, integer *info);
-
-/* Subroutine */ int dposvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, doublereal *a, integer *lda, doublereal *af, integer *ldaf,
- char *equed, doublereal *s, doublereal *b, integer *ldb, doublereal *
- x, integer *ldx, doublereal *rcond, doublereal *ferr, doublereal *
- berr, doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dpotf2_(char *uplo, integer *n, doublereal *a, integer *
- lda, integer *info);
-
-/* Subroutine */ int dpotrf_(char *uplo, integer *n, doublereal *a, integer *
- lda, integer *info);
-
-/* Subroutine */ int dpotri_(char *uplo, integer *n, doublereal *a, integer *
- lda, integer *info);
-
-/* Subroutine */ int dpotrs_(char *uplo, integer *n, integer *nrhs,
- doublereal *a, integer *lda, doublereal *b, integer *ldb, integer *
- info);
-
-/* Subroutine */ int dppcon_(char *uplo, integer *n, doublereal *ap,
- doublereal *anorm, doublereal *rcond, doublereal *work, integer *
- iwork, integer *info);
-
-/* Subroutine */ int dppequ_(char *uplo, integer *n, doublereal *ap,
- doublereal *s, doublereal *scond, doublereal *amax, integer *info);
-
-/* Subroutine */ int dpprfs_(char *uplo, integer *n, integer *nrhs,
- doublereal *ap, doublereal *afp, doublereal *b, integer *ldb,
- doublereal *x, integer *ldx, doublereal *ferr, doublereal *berr,
- doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dppsv_(char *uplo, integer *n, integer *nrhs, doublereal
- *ap, doublereal *b, integer *ldb, integer *info);
-
-/* Subroutine */ int dppsvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, doublereal *ap, doublereal *afp, char *equed, doublereal *s,
- doublereal *b, integer *ldb, doublereal *x, integer *ldx, doublereal *
- rcond, doublereal *ferr, doublereal *berr, doublereal *work, integer *
- iwork, integer *info);
-
-/* Subroutine */ int dpptrf_(char *uplo, integer *n, doublereal *ap, integer *
- info);
-
-/* Subroutine */ int dpptri_(char *uplo, integer *n, doublereal *ap, integer *
- info);
-
-/* Subroutine */ int dpptrs_(char *uplo, integer *n, integer *nrhs,
- doublereal *ap, doublereal *b, integer *ldb, integer *info);
-
-/* Subroutine */ int dptcon_(integer *n, doublereal *d__, doublereal *e,
- doublereal *anorm, doublereal *rcond, doublereal *work, integer *info);
-
-/* Subroutine */ int dpteqr_(char *compz, integer *n, doublereal *d__,
- doublereal *e, doublereal *z__, integer *ldz, doublereal *work,
- integer *info);
-
-/* Subroutine */ int dptrfs_(integer *n, integer *nrhs, doublereal *d__,
- doublereal *e, doublereal *df, doublereal *ef, doublereal *b, integer
- *ldb, doublereal *x, integer *ldx, doublereal *ferr, doublereal *berr,
- doublereal *work, integer *info);
-
-/* Subroutine */ int dptsv_(integer *n, integer *nrhs, doublereal *d__,
- doublereal *e, doublereal *b, integer *ldb, integer *info);
-
-/* Subroutine */ int dptsvx_(char *fact, integer *n, integer *nrhs,
- doublereal *d__, doublereal *e, doublereal *df, doublereal *ef,
- doublereal *b, integer *ldb, doublereal *x, integer *ldx, doublereal *
- rcond, doublereal *ferr, doublereal *berr, doublereal *work, integer *
- info);
-
-/* Subroutine */ int dpttrf_(integer *n, doublereal *d__, doublereal *e,
- integer *info);
-
-/* Subroutine */ int dpttrs_(integer *n, integer *nrhs, doublereal *d__,
- doublereal *e, doublereal *b, integer *ldb, integer *info);
-
-/* Subroutine */ int dptts2_(integer *n, integer *nrhs, doublereal *d__,
- doublereal *e, doublereal *b, integer *ldb);
-
-/* Subroutine */ int drscl_(integer *n, doublereal *sa, doublereal *sx,
- integer *incx);
-
-/* Subroutine */ int dsbev_(char *jobz, char *uplo, integer *n, integer *kd,
- doublereal *ab, integer *ldab, doublereal *w, doublereal *z__,
- integer *ldz, doublereal *work, integer *info);
-
-/* Subroutine */ int dsbevd_(char *jobz, char *uplo, integer *n, integer *kd,
- doublereal *ab, integer *ldab, doublereal *w, doublereal *z__,
- integer *ldz, doublereal *work, integer *lwork, integer *iwork,
- integer *liwork, integer *info);
-
-/* Subroutine */ int dsbevx_(char *jobz, char *range, char *uplo, integer *n,
- integer *kd, doublereal *ab, integer *ldab, doublereal *q, integer *
- ldq, doublereal *vl, doublereal *vu, integer *il, integer *iu,
- doublereal *abstol, integer *m, doublereal *w, doublereal *z__,
- integer *ldz, doublereal *work, integer *iwork, integer *ifail,
- integer *info);
-
-/* Subroutine */ int dsbgst_(char *vect, char *uplo, integer *n, integer *ka,
- integer *kb, doublereal *ab, integer *ldab, doublereal *bb, integer *
- ldbb, doublereal *x, integer *ldx, doublereal *work, integer *info);
-
-/* Subroutine */ int dsbgv_(char *jobz, char *uplo, integer *n, integer *ka,
- integer *kb, doublereal *ab, integer *ldab, doublereal *bb, integer *
- ldbb, doublereal *w, doublereal *z__, integer *ldz, doublereal *work,
- integer *info);
-
-/* Subroutine */ int dsbgvd_(char *jobz, char *uplo, integer *n, integer *ka,
- integer *kb, doublereal *ab, integer *ldab, doublereal *bb, integer *
- ldbb, doublereal *w, doublereal *z__, integer *ldz, doublereal *work,
- integer *lwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int dsbgvx_(char *jobz, char *range, char *uplo, integer *n,
- integer *ka, integer *kb, doublereal *ab, integer *ldab, doublereal *
- bb, integer *ldbb, doublereal *q, integer *ldq, doublereal *vl,
- doublereal *vu, integer *il, integer *iu, doublereal *abstol, integer
- *m, doublereal *w, doublereal *z__, integer *ldz, doublereal *work,
- integer *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int dsbtrd_(char *vect, char *uplo, integer *n, integer *kd,
- doublereal *ab, integer *ldab, doublereal *d__, doublereal *e,
- doublereal *q, integer *ldq, doublereal *work, integer *info);
-
-/* Subroutine */ int dspcon_(char *uplo, integer *n, doublereal *ap, integer *
- ipiv, doublereal *anorm, doublereal *rcond, doublereal *work, integer
- *iwork, integer *info);
-
-/* Subroutine */ int dspev_(char *jobz, char *uplo, integer *n, doublereal *
- ap, doublereal *w, doublereal *z__, integer *ldz, doublereal *work,
- integer *info);
-
-/* Subroutine */ int dspevd_(char *jobz, char *uplo, integer *n, doublereal *
- ap, doublereal *w, doublereal *z__, integer *ldz, doublereal *work,
- integer *lwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int dspevx_(char *jobz, char *range, char *uplo, integer *n,
- doublereal *ap, doublereal *vl, doublereal *vu, integer *il, integer *
- iu, doublereal *abstol, integer *m, doublereal *w, doublereal *z__,
- integer *ldz, doublereal *work, integer *iwork, integer *ifail,
- integer *info);
-
-/* Subroutine */ int dspgst_(integer *itype, char *uplo, integer *n,
- doublereal *ap, doublereal *bp, integer *info);
-
-/* Subroutine */ int dspgv_(integer *itype, char *jobz, char *uplo, integer *
- n, doublereal *ap, doublereal *bp, doublereal *w, doublereal *z__,
- integer *ldz, doublereal *work, integer *info);
-
-/* Subroutine */ int dspgvd_(integer *itype, char *jobz, char *uplo, integer *
- n, doublereal *ap, doublereal *bp, doublereal *w, doublereal *z__,
- integer *ldz, doublereal *work, integer *lwork, integer *iwork,
- integer *liwork, integer *info);
-
-/* Subroutine */ int dspgvx_(integer *itype, char *jobz, char *range, char *
- uplo, integer *n, doublereal *ap, doublereal *bp, doublereal *vl,
- doublereal *vu, integer *il, integer *iu, doublereal *abstol, integer
- *m, doublereal *w, doublereal *z__, integer *ldz, doublereal *work,
- integer *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int dsprfs_(char *uplo, integer *n, integer *nrhs,
- doublereal *ap, doublereal *afp, integer *ipiv, doublereal *b,
- integer *ldb, doublereal *x, integer *ldx, doublereal *ferr,
- doublereal *berr, doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dspsv_(char *uplo, integer *n, integer *nrhs, doublereal
- *ap, integer *ipiv, doublereal *b, integer *ldb, integer *info);
-
-/* Subroutine */ int dspsvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, doublereal *ap, doublereal *afp, integer *ipiv, doublereal *b,
- integer *ldb, doublereal *x, integer *ldx, doublereal *rcond,
- doublereal *ferr, doublereal *berr, doublereal *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int dsptrd_(char *uplo, integer *n, doublereal *ap,
- doublereal *d__, doublereal *e, doublereal *tau, integer *info);
-
-/* Subroutine */ int dsptrf_(char *uplo, integer *n, doublereal *ap, integer *
- ipiv, integer *info);
-
-/* Subroutine */ int dsptri_(char *uplo, integer *n, doublereal *ap, integer *
- ipiv, doublereal *work, integer *info);
-
-/* Subroutine */ int dsptrs_(char *uplo, integer *n, integer *nrhs,
- doublereal *ap, integer *ipiv, doublereal *b, integer *ldb, integer *
- info);
-
-/* Subroutine */ int dstebz_(char *range, char *order, integer *n, doublereal
- *vl, doublereal *vu, integer *il, integer *iu, doublereal *abstol,
- doublereal *d__, doublereal *e, integer *m, integer *nsplit,
- doublereal *w, integer *iblock, integer *isplit, doublereal *work,
- integer *iwork, integer *info);
-
-/* Subroutine */ int dstedc_(char *compz, integer *n, doublereal *d__,
- doublereal *e, doublereal *z__, integer *ldz, doublereal *work,
- integer *lwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int dstegr_(char *jobz, char *range, integer *n, doublereal *
- d__, doublereal *e, doublereal *vl, doublereal *vu, integer *il,
- integer *iu, doublereal *abstol, integer *m, doublereal *w,
- doublereal *z__, integer *ldz, integer *isuppz, doublereal *work,
- integer *lwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int dstein_(integer *n, doublereal *d__, doublereal *e,
- integer *m, doublereal *w, integer *iblock, integer *isplit,
- doublereal *z__, integer *ldz, doublereal *work, integer *iwork,
- integer *ifail, integer *info);
-
-/* Subroutine */ int dsteqr_(char *compz, integer *n, doublereal *d__,
- doublereal *e, doublereal *z__, integer *ldz, doublereal *work,
- integer *info);
-
-/* Subroutine */ int dsterf_(integer *n, doublereal *d__, doublereal *e,
- integer *info);
-
-/* Subroutine */ int dstev_(char *jobz, integer *n, doublereal *d__,
- doublereal *e, doublereal *z__, integer *ldz, doublereal *work,
- integer *info);
-
-/* Subroutine */ int dstevd_(char *jobz, integer *n, doublereal *d__,
- doublereal *e, doublereal *z__, integer *ldz, doublereal *work,
- integer *lwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int dstevr_(char *jobz, char *range, integer *n, doublereal *
- d__, doublereal *e, doublereal *vl, doublereal *vu, integer *il,
- integer *iu, doublereal *abstol, integer *m, doublereal *w,
- doublereal *z__, integer *ldz, integer *isuppz, doublereal *work,
- integer *lwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int dstevx_(char *jobz, char *range, integer *n, doublereal *
- d__, doublereal *e, doublereal *vl, doublereal *vu, integer *il,
- integer *iu, doublereal *abstol, integer *m, doublereal *w,
- doublereal *z__, integer *ldz, doublereal *work, integer *iwork,
- integer *ifail, integer *info);
-
-/* Subroutine */ int dsycon_(char *uplo, integer *n, doublereal *a, integer *
- lda, integer *ipiv, doublereal *anorm, doublereal *rcond, doublereal *
- work, integer *iwork, integer *info);
-
-/* Subroutine */ int dsyev_(char *jobz, char *uplo, integer *n, doublereal *a,
- integer *lda, doublereal *w, doublereal *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int dsyevd_(char *jobz, char *uplo, integer *n, doublereal *
- a, integer *lda, doublereal *w, doublereal *work, integer *lwork,
- integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int dsyevr_(char *jobz, char *range, char *uplo, integer *n,
- doublereal *a, integer *lda, doublereal *vl, doublereal *vu, integer *
- il, integer *iu, doublereal *abstol, integer *m, doublereal *w,
- doublereal *z__, integer *ldz, integer *isuppz, doublereal *work,
- integer *lwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int dsyevx_(char *jobz, char *range, char *uplo, integer *n,
- doublereal *a, integer *lda, doublereal *vl, doublereal *vu, integer *
- il, integer *iu, doublereal *abstol, integer *m, doublereal *w,
- doublereal *z__, integer *ldz, doublereal *work, integer *lwork,
- integer *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int dsygs2_(integer *itype, char *uplo, integer *n,
- doublereal *a, integer *lda, doublereal *b, integer *ldb, integer *
- info);
-
-/* Subroutine */ int dsygst_(integer *itype, char *uplo, integer *n,
- doublereal *a, integer *lda, doublereal *b, integer *ldb, integer *
- info);
-
-/* Subroutine */ int dsygv_(integer *itype, char *jobz, char *uplo, integer *
- n, doublereal *a, integer *lda, doublereal *b, integer *ldb,
- doublereal *w, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dsygvd_(integer *itype, char *jobz, char *uplo, integer *
- n, doublereal *a, integer *lda, doublereal *b, integer *ldb,
- doublereal *w, doublereal *work, integer *lwork, integer *iwork,
- integer *liwork, integer *info);
-
-/* Subroutine */ int dsygvx_(integer *itype, char *jobz, char *range, char *
- uplo, integer *n, doublereal *a, integer *lda, doublereal *b, integer
- *ldb, doublereal *vl, doublereal *vu, integer *il, integer *iu,
- doublereal *abstol, integer *m, doublereal *w, doublereal *z__,
- integer *ldz, doublereal *work, integer *lwork, integer *iwork,
- integer *ifail, integer *info);
-
-/* Subroutine */ int dsyrfs_(char *uplo, integer *n, integer *nrhs,
- doublereal *a, integer *lda, doublereal *af, integer *ldaf, integer *
- ipiv, doublereal *b, integer *ldb, doublereal *x, integer *ldx,
- doublereal *ferr, doublereal *berr, doublereal *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int dsysv_(char *uplo, integer *n, integer *nrhs, doublereal
- *a, integer *lda, integer *ipiv, doublereal *b, integer *ldb,
- doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dsysvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, doublereal *a, integer *lda, doublereal *af, integer *ldaf,
- integer *ipiv, doublereal *b, integer *ldb, doublereal *x, integer *
- ldx, doublereal *rcond, doublereal *ferr, doublereal *berr,
- doublereal *work, integer *lwork, integer *iwork, integer *info);
-
-/* Subroutine */ int dsytd2_(char *uplo, integer *n, doublereal *a, integer *
- lda, doublereal *d__, doublereal *e, doublereal *tau, integer *info);
-
-/* Subroutine */ int dsytf2_(char *uplo, integer *n, doublereal *a, integer *
- lda, integer *ipiv, integer *info);
-
-/* Subroutine */ int dsytrd_(char *uplo, integer *n, doublereal *a, integer *
- lda, doublereal *d__, doublereal *e, doublereal *tau, doublereal *
- work, integer *lwork, integer *info);
-
-/* Subroutine */ int dsytrf_(char *uplo, integer *n, doublereal *a, integer *
- lda, integer *ipiv, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dsytri_(char *uplo, integer *n, doublereal *a, integer *
- lda, integer *ipiv, doublereal *work, integer *info);
-
-/* Subroutine */ int dsytrs_(char *uplo, integer *n, integer *nrhs,
- doublereal *a, integer *lda, integer *ipiv, doublereal *b, integer *
- ldb, integer *info);
-
-/* Subroutine */ int dtbcon_(char *norm, char *uplo, char *diag, integer *n,
- integer *kd, doublereal *ab, integer *ldab, doublereal *rcond,
- doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dtbrfs_(char *uplo, char *trans, char *diag, integer *n,
- integer *kd, integer *nrhs, doublereal *ab, integer *ldab, doublereal
- *b, integer *ldb, doublereal *x, integer *ldx, doublereal *ferr,
- doublereal *berr, doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dtbtrs_(char *uplo, char *trans, char *diag, integer *n,
- integer *kd, integer *nrhs, doublereal *ab, integer *ldab, doublereal
- *b, integer *ldb, integer *info);
-
-/* Subroutine */ int dtgevc_(char *side, char *howmny, logical *select,
- integer *n, doublereal *a, integer *lda, doublereal *b, integer *ldb,
- doublereal *vl, integer *ldvl, doublereal *vr, integer *ldvr, integer
- *mm, integer *m, doublereal *work, integer *info);
-
-/* Subroutine */ int dtgex2_(logical *wantq, logical *wantz, integer *n,
- doublereal *a, integer *lda, doublereal *b, integer *ldb, doublereal *
- q, integer *ldq, doublereal *z__, integer *ldz, integer *j1, integer *
- n1, integer *n2, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dtgexc_(logical *wantq, logical *wantz, integer *n,
- doublereal *a, integer *lda, doublereal *b, integer *ldb, doublereal *
- q, integer *ldq, doublereal *z__, integer *ldz, integer *ifst,
- integer *ilst, doublereal *work, integer *lwork, integer *info);
-
-/* Subroutine */ int dtgsen_(integer *ijob, logical *wantq, logical *wantz,
- logical *select, integer *n, doublereal *a, integer *lda, doublereal *
- b, integer *ldb, doublereal *alphar, doublereal *alphai, doublereal *
- beta, doublereal *q, integer *ldq, doublereal *z__, integer *ldz,
- integer *m, doublereal *pl, doublereal *pr, doublereal *dif,
- doublereal *work, integer *lwork, integer *iwork, integer *liwork,
- integer *info);
-
-/* Subroutine */ int dtgsja_(char *jobu, char *jobv, char *jobq, integer *m,
- integer *p, integer *n, integer *k, integer *l, doublereal *a,
- integer *lda, doublereal *b, integer *ldb, doublereal *tola,
- doublereal *tolb, doublereal *alpha, doublereal *beta, doublereal *u,
- integer *ldu, doublereal *v, integer *ldv, doublereal *q, integer *
- ldq, doublereal *work, integer *ncycle, integer *info);
-
-/* Subroutine */ int dtgsna_(char *job, char *howmny, logical *select,
- integer *n, doublereal *a, integer *lda, doublereal *b, integer *ldb,
- doublereal *vl, integer *ldvl, doublereal *vr, integer *ldvr,
- doublereal *s, doublereal *dif, integer *mm, integer *m, doublereal *
- work, integer *lwork, integer *iwork, integer *info);
-
-/* Subroutine */ int dtgsy2_(char *trans, integer *ijob, integer *m, integer *
- n, doublereal *a, integer *lda, doublereal *b, integer *ldb,
- doublereal *c__, integer *ldc, doublereal *d__, integer *ldd,
- doublereal *e, integer *lde, doublereal *f, integer *ldf, doublereal *
- scale, doublereal *rdsum, doublereal *rdscal, integer *iwork, integer
- *pq, integer *info);
-
-/* Subroutine */ int dtgsyl_(char *trans, integer *ijob, integer *m, integer *
- n, doublereal *a, integer *lda, doublereal *b, integer *ldb,
- doublereal *c__, integer *ldc, doublereal *d__, integer *ldd,
- doublereal *e, integer *lde, doublereal *f, integer *ldf, doublereal *
- scale, doublereal *dif, doublereal *work, integer *lwork, integer *
- iwork, integer *info);
-
-/* Subroutine */ int dtpcon_(char *norm, char *uplo, char *diag, integer *n,
- doublereal *ap, doublereal *rcond, doublereal *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int dtprfs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, doublereal *ap, doublereal *b, integer *ldb,
- doublereal *x, integer *ldx, doublereal *ferr, doublereal *berr,
- doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dtptri_(char *uplo, char *diag, integer *n, doublereal *
- ap, integer *info);
-
-/* Subroutine */ int dtptrs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, doublereal *ap, doublereal *b, integer *ldb, integer *
- info);
-
-/* Subroutine */ int dtrcon_(char *norm, char *uplo, char *diag, integer *n,
- doublereal *a, integer *lda, doublereal *rcond, doublereal *work,
- integer *iwork, integer *info);
-
-/* Subroutine */ int dtrevc_(char *side, char *howmny, logical *select,
- integer *n, doublereal *t, integer *ldt, doublereal *vl, integer *
- ldvl, doublereal *vr, integer *ldvr, integer *mm, integer *m,
- doublereal *work, integer *info);
-
-/* Subroutine */ int dtrexc_(char *compq, integer *n, doublereal *t, integer *
- ldt, doublereal *q, integer *ldq, integer *ifst, integer *ilst,
- doublereal *work, integer *info);
-
-/* Subroutine */ int dtrrfs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, doublereal *a, integer *lda, doublereal *b, integer *
- ldb, doublereal *x, integer *ldx, doublereal *ferr, doublereal *berr,
- doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int dtrsen_(char *job, char *compq, logical *select, integer
- *n, doublereal *t, integer *ldt, doublereal *q, integer *ldq,
- doublereal *wr, doublereal *wi, integer *m, doublereal *s, doublereal
- *sep, doublereal *work, integer *lwork, integer *iwork, integer *
- liwork, integer *info);
-
-/* Subroutine */ int dtrsna_(char *job, char *howmny, logical *select,
- integer *n, doublereal *t, integer *ldt, doublereal *vl, integer *
- ldvl, doublereal *vr, integer *ldvr, doublereal *s, doublereal *sep,
- integer *mm, integer *m, doublereal *work, integer *ldwork, integer *
- iwork, integer *info);
-
-/* Subroutine */ int dtrsyl_(char *trana, char *tranb, integer *isgn, integer
- *m, integer *n, doublereal *a, integer *lda, doublereal *b, integer *
- ldb, doublereal *c__, integer *ldc, doublereal *scale, integer *info);
-
-/* Subroutine */ int dtrti2_(char *uplo, char *diag, integer *n, doublereal *
- a, integer *lda, integer *info);
-
-/* Subroutine */ int dtrtri_(char *uplo, char *diag, integer *n, doublereal *
- a, integer *lda, integer *info);
-
-/* Subroutine */ int dtrtrs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, doublereal *a, integer *lda, doublereal *b, integer *
- ldb, integer *info);
-
-/* Subroutine */ int dtzrqf_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *tau, integer *info);
-
-/* Subroutine */ int dtzrzf_(integer *m, integer *n, doublereal *a, integer *
- lda, doublereal *tau, doublereal *work, integer *lwork, integer *info);
-
-integer icmax1_(integer *n, complex *cx, integer *incx);
-
-integer ieeeck_(integer *ispec, real *zero, real *one);
-
-integer ilaenv_(integer *ispec, char *name__, char *opts, integer *n1,
- integer *n2, integer *n3, integer *n4, ftnlen name_len, ftnlen
- opts_len);
-
-integer izmax1_(integer *n, doublecomplex *cx, integer *incx);
-
-/* Subroutine */ int sbdsdc_(char *uplo, char *compq, integer *n, real *d__,
- real *e, real *u, integer *ldu, real *vt, integer *ldvt, real *q,
- integer *iq, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int sbdsqr_(char *uplo, integer *n, integer *ncvt, integer *
- nru, integer *ncc, real *d__, real *e, real *vt, integer *ldvt, real *
- u, integer *ldu, real *c__, integer *ldc, real *work, integer *info);
-
-/* Subroutine */ int sdisna_(char *job, integer *m, integer *n, real *d__,
- real *sep, integer *info);
-
-/* Subroutine */ int sgbbrd_(char *vect, integer *m, integer *n, integer *ncc,
- integer *kl, integer *ku, real *ab, integer *ldab, real *d__, real *
- e, real *q, integer *ldq, real *pt, integer *ldpt, real *c__, integer
- *ldc, real *work, integer *info);
-
-/* Subroutine */ int sgbcon_(char *norm, integer *n, integer *kl, integer *ku,
- real *ab, integer *ldab, integer *ipiv, real *anorm, real *rcond,
- real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int sgbequ_(integer *m, integer *n, integer *kl, integer *ku,
- real *ab, integer *ldab, real *r__, real *c__, real *rowcnd, real *
- colcnd, real *amax, integer *info);
-
-/* Subroutine */ int sgbrfs_(char *trans, integer *n, integer *kl, integer *
- ku, integer *nrhs, real *ab, integer *ldab, real *afb, integer *ldafb,
- integer *ipiv, real *b, integer *ldb, real *x, integer *ldx, real *
- ferr, real *berr, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int sgbsv_(integer *n, integer *kl, integer *ku, integer *
- nrhs, real *ab, integer *ldab, integer *ipiv, real *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int sgbsvx_(char *fact, char *trans, integer *n, integer *kl,
- integer *ku, integer *nrhs, real *ab, integer *ldab, real *afb,
- integer *ldafb, integer *ipiv, char *equed, real *r__, real *c__,
- real *b, integer *ldb, real *x, integer *ldx, real *rcond, real *ferr,
- real *berr, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int sgbtf2_(integer *m, integer *n, integer *kl, integer *ku,
- real *ab, integer *ldab, integer *ipiv, integer *info);
-
-/* Subroutine */ int sgbtrf_(integer *m, integer *n, integer *kl, integer *ku,
- real *ab, integer *ldab, integer *ipiv, integer *info);
-
-/* Subroutine */ int sgbtrs_(char *trans, integer *n, integer *kl, integer *
- ku, integer *nrhs, real *ab, integer *ldab, integer *ipiv, real *b,
- integer *ldb, integer *info);
-
-/* Subroutine */ int sgebak_(char *job, char *side, integer *n, integer *ilo,
- integer *ihi, real *scale, integer *m, real *v, integer *ldv, integer
- *info);
-
-/* Subroutine */ int sgebal_(char *job, integer *n, real *a, integer *lda,
- integer *ilo, integer *ihi, real *scale, integer *info);
-
-/* Subroutine */ int sgebd2_(integer *m, integer *n, real *a, integer *lda,
- real *d__, real *e, real *tauq, real *taup, real *work, integer *info);
-
-/* Subroutine */ int sgebrd_(integer *m, integer *n, real *a, integer *lda,
- real *d__, real *e, real *tauq, real *taup, real *work, integer *
- lwork, integer *info);
-
-/* Subroutine */ int sgecon_(char *norm, integer *n, real *a, integer *lda,
- real *anorm, real *rcond, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int sgeequ_(integer *m, integer *n, real *a, integer *lda,
- real *r__, real *c__, real *rowcnd, real *colcnd, real *amax, integer
- *info);
-
-/* Subroutine */ int sgees_(char *jobvs, char *sort, L_fp select, integer *n,
- real *a, integer *lda, integer *sdim, real *wr, real *wi, real *vs,
- integer *ldvs, real *work, integer *lwork, logical *bwork, integer *
- info);
-
-/* Subroutine */ int sgeesx_(char *jobvs, char *sort, L_fp select, char *
- sense, integer *n, real *a, integer *lda, integer *sdim, real *wr,
- real *wi, real *vs, integer *ldvs, real *rconde, real *rcondv, real *
- work, integer *lwork, integer *iwork, integer *liwork, logical *bwork,
- integer *info);
-
-/* Subroutine */ int sgeev_(char *jobvl, char *jobvr, integer *n, real *a,
- integer *lda, real *wr, real *wi, real *vl, integer *ldvl, real *vr,
- integer *ldvr, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sgeevx_(char *balanc, char *jobvl, char *jobvr, char *
- sense, integer *n, real *a, integer *lda, real *wr, real *wi, real *
- vl, integer *ldvl, real *vr, integer *ldvr, integer *ilo, integer *
- ihi, real *scale, real *abnrm, real *rconde, real *rcondv, real *work,
- integer *lwork, integer *iwork, integer *info);
-
-/* Subroutine */ int sgegs_(char *jobvsl, char *jobvsr, integer *n, real *a,
- integer *lda, real *b, integer *ldb, real *alphar, real *alphai, real
- *beta, real *vsl, integer *ldvsl, real *vsr, integer *ldvsr, real *
- work, integer *lwork, integer *info);
-
-/* Subroutine */ int sgegv_(char *jobvl, char *jobvr, integer *n, real *a,
- integer *lda, real *b, integer *ldb, real *alphar, real *alphai, real
- *beta, real *vl, integer *ldvl, real *vr, integer *ldvr, real *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int sgehd2_(integer *n, integer *ilo, integer *ihi, real *a,
- integer *lda, real *tau, real *work, integer *info);
-
-/* Subroutine */ int sgehrd_(integer *n, integer *ilo, integer *ihi, real *a,
- integer *lda, real *tau, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sgelq2_(integer *m, integer *n, real *a, integer *lda,
- real *tau, real *work, integer *info);
-
-/* Subroutine */ int sgelqf_(integer *m, integer *n, real *a, integer *lda,
- real *tau, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sgels_(char *trans, integer *m, integer *n, integer *
- nrhs, real *a, integer *lda, real *b, integer *ldb, real *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int sgelsd_(integer *m, integer *n, integer *nrhs, real *a,
- integer *lda, real *b, integer *ldb, real *s, real *rcond, integer *
- rank, real *work, integer *lwork, integer *iwork, integer *info);
-
-/* Subroutine */ int sgelss_(integer *m, integer *n, integer *nrhs, real *a,
- integer *lda, real *b, integer *ldb, real *s, real *rcond, integer *
- rank, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sgelsx_(integer *m, integer *n, integer *nrhs, real *a,
- integer *lda, real *b, integer *ldb, integer *jpvt, real *rcond,
- integer *rank, real *work, integer *info);
-
-/* Subroutine */ int sgelsy_(integer *m, integer *n, integer *nrhs, real *a,
- integer *lda, real *b, integer *ldb, integer *jpvt, real *rcond,
- integer *rank, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sgeql2_(integer *m, integer *n, real *a, integer *lda,
- real *tau, real *work, integer *info);
-
-/* Subroutine */ int sgeqlf_(integer *m, integer *n, real *a, integer *lda,
- real *tau, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sgeqp3_(integer *m, integer *n, real *a, integer *lda,
- integer *jpvt, real *tau, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sgeqpf_(integer *m, integer *n, real *a, integer *lda,
- integer *jpvt, real *tau, real *work, integer *info);
-
-/* Subroutine */ int sgeqr2_(integer *m, integer *n, real *a, integer *lda,
- real *tau, real *work, integer *info);
-
-/* Subroutine */ int sgeqrf_(integer *m, integer *n, real *a, integer *lda,
- real *tau, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sgerfs_(char *trans, integer *n, integer *nrhs, real *a,
- integer *lda, real *af, integer *ldaf, integer *ipiv, real *b,
- integer *ldb, real *x, integer *ldx, real *ferr, real *berr, real *
- work, integer *iwork, integer *info);
-
-/* Subroutine */ int sgerq2_(integer *m, integer *n, real *a, integer *lda,
- real *tau, real *work, integer *info);
-
-/* Subroutine */ int sgerqf_(integer *m, integer *n, real *a, integer *lda,
- real *tau, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sgesc2_(integer *n, real *a, integer *lda, real *rhs,
- integer *ipiv, integer *jpiv, real *scale);
-
-/* Subroutine */ int sgesdd_(char *jobz, integer *m, integer *n, real *a,
- integer *lda, real *s, real *u, integer *ldu, real *vt, integer *ldvt,
- real *work, integer *lwork, integer *iwork, integer *info);
-
-/* Subroutine */ int sgesv_(integer *n, integer *nrhs, real *a, integer *lda,
- integer *ipiv, real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int sgesvd_(char *jobu, char *jobvt, integer *m, integer *n,
- real *a, integer *lda, real *s, real *u, integer *ldu, real *vt,
- integer *ldvt, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sgesvx_(char *fact, char *trans, integer *n, integer *
- nrhs, real *a, integer *lda, real *af, integer *ldaf, integer *ipiv,
- char *equed, real *r__, real *c__, real *b, integer *ldb, real *x,
- integer *ldx, real *rcond, real *ferr, real *berr, real *work,
- integer *iwork, integer *info);
-
-/* Subroutine */ int sgetc2_(integer *n, real *a, integer *lda, integer *ipiv,
- integer *jpiv, integer *info);
-
-/* Subroutine */ int sgetf2_(integer *m, integer *n, real *a, integer *lda,
- integer *ipiv, integer *info);
-
-/* Subroutine */ int sgetrf_(integer *m, integer *n, real *a, integer *lda,
- integer *ipiv, integer *info);
-
-/* Subroutine */ int sgetri_(integer *n, real *a, integer *lda, integer *ipiv,
- real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sgetrs_(char *trans, integer *n, integer *nrhs, real *a,
- integer *lda, integer *ipiv, real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int sggbak_(char *job, char *side, integer *n, integer *ilo,
- integer *ihi, real *lscale, real *rscale, integer *m, real *v,
- integer *ldv, integer *info);
-
-/* Subroutine */ int sggbal_(char *job, integer *n, real *a, integer *lda,
- real *b, integer *ldb, integer *ilo, integer *ihi, real *lscale, real
- *rscale, real *work, integer *info);
-
-/* Subroutine */ int sgges_(char *jobvsl, char *jobvsr, char *sort, L_fp
- selctg, integer *n, real *a, integer *lda, real *b, integer *ldb,
- integer *sdim, real *alphar, real *alphai, real *beta, real *vsl,
- integer *ldvsl, real *vsr, integer *ldvsr, real *work, integer *lwork,
- logical *bwork, integer *info);
-
-/* Subroutine */ int sggesx_(char *jobvsl, char *jobvsr, char *sort, L_fp
- selctg, char *sense, integer *n, real *a, integer *lda, real *b,
- integer *ldb, integer *sdim, real *alphar, real *alphai, real *beta,
- real *vsl, integer *ldvsl, real *vsr, integer *ldvsr, real *rconde,
- real *rcondv, real *work, integer *lwork, integer *iwork, integer *
- liwork, logical *bwork, integer *info);
-
-/* Subroutine */ int sggev_(char *jobvl, char *jobvr, integer *n, real *a,
- integer *lda, real *b, integer *ldb, real *alphar, real *alphai, real
- *beta, real *vl, integer *ldvl, real *vr, integer *ldvr, real *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int sggevx_(char *balanc, char *jobvl, char *jobvr, char *
- sense, integer *n, real *a, integer *lda, real *b, integer *ldb, real
- *alphar, real *alphai, real *beta, real *vl, integer *ldvl, real *vr,
- integer *ldvr, integer *ilo, integer *ihi, real *lscale, real *rscale,
- real *abnrm, real *bbnrm, real *rconde, real *rcondv, real *work,
- integer *lwork, integer *iwork, logical *bwork, integer *info);
-
-/* Subroutine */ int sggglm_(integer *n, integer *m, integer *p, real *a,
- integer *lda, real *b, integer *ldb, real *d__, real *x, real *y,
- real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sgghrd_(char *compq, char *compz, integer *n, integer *
- ilo, integer *ihi, real *a, integer *lda, real *b, integer *ldb, real
- *q, integer *ldq, real *z__, integer *ldz, integer *info);
-
-/* Subroutine */ int sgglse_(integer *m, integer *n, integer *p, real *a,
- integer *lda, real *b, integer *ldb, real *c__, real *d__, real *x,
- real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sggqrf_(integer *n, integer *m, integer *p, real *a,
- integer *lda, real *taua, real *b, integer *ldb, real *taub, real *
- work, integer *lwork, integer *info);
-
-/* Subroutine */ int sggrqf_(integer *m, integer *p, integer *n, real *a,
- integer *lda, real *taua, real *b, integer *ldb, real *taub, real *
- work, integer *lwork, integer *info);
-
-/* Subroutine */ int sggsvd_(char *jobu, char *jobv, char *jobq, integer *m,
- integer *n, integer *p, integer *k, integer *l, real *a, integer *lda,
- real *b, integer *ldb, real *alpha, real *beta, real *u, integer *
- ldu, real *v, integer *ldv, real *q, integer *ldq, real *work,
- integer *iwork, integer *info);
-
-/* Subroutine */ int sggsvp_(char *jobu, char *jobv, char *jobq, integer *m,
- integer *p, integer *n, real *a, integer *lda, real *b, integer *ldb,
- real *tola, real *tolb, integer *k, integer *l, real *u, integer *ldu,
- real *v, integer *ldv, real *q, integer *ldq, integer *iwork, real *
- tau, real *work, integer *info);
-
-/* Subroutine */ int sgtcon_(char *norm, integer *n, real *dl, real *d__,
- real *du, real *du2, integer *ipiv, real *anorm, real *rcond, real *
- work, integer *iwork, integer *info);
-
-/* Subroutine */ int sgtrfs_(char *trans, integer *n, integer *nrhs, real *dl,
- real *d__, real *du, real *dlf, real *df, real *duf, real *du2,
- integer *ipiv, real *b, integer *ldb, real *x, integer *ldx, real *
- ferr, real *berr, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int sgtsv_(integer *n, integer *nrhs, real *dl, real *d__,
- real *du, real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int sgtsvx_(char *fact, char *trans, integer *n, integer *
- nrhs, real *dl, real *d__, real *du, real *dlf, real *df, real *duf,
- real *du2, integer *ipiv, real *b, integer *ldb, real *x, integer *
- ldx, real *rcond, real *ferr, real *berr, real *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int sgttrf_(integer *n, real *dl, real *d__, real *du, real *
- du2, integer *ipiv, integer *info);
-
-/* Subroutine */ int sgttrs_(char *trans, integer *n, integer *nrhs, real *dl,
- real *d__, real *du, real *du2, integer *ipiv, real *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int sgtts2_(integer *itrans, integer *n, integer *nrhs, real
- *dl, real *d__, real *du, real *du2, integer *ipiv, real *b, integer *
- ldb);
-
-/* Subroutine */ int shgeqz_(char *job, char *compq, char *compz, integer *n,
- integer *ilo, integer *ihi, real *a, integer *lda, real *b, integer *
- ldb, real *alphar, real *alphai, real *beta, real *q, integer *ldq,
- real *z__, integer *ldz, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int shsein_(char *side, char *eigsrc, char *initv, logical *
- select, integer *n, real *h__, integer *ldh, real *wr, real *wi, real
- *vl, integer *ldvl, real *vr, integer *ldvr, integer *mm, integer *m,
- real *work, integer *ifaill, integer *ifailr, integer *info);
-
-/* Subroutine */ int shseqr_(char *job, char *compz, integer *n, integer *ilo,
- integer *ihi, real *h__, integer *ldh, real *wr, real *wi, real *z__,
- integer *ldz, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int slabad_(real *small, real *large);
-
-/* Subroutine */ int slabrd_(integer *m, integer *n, integer *nb, real *a,
- integer *lda, real *d__, real *e, real *tauq, real *taup, real *x,
- integer *ldx, real *y, integer *ldy);
-
-/* Subroutine */ int slacon_(integer *n, real *v, real *x, integer *isgn,
- real *est, integer *kase);
-
-/* Subroutine */ int slacpy_(char *uplo, integer *m, integer *n, real *a,
- integer *lda, real *b, integer *ldb);
-
-/* Subroutine */ int sladiv_(real *a, real *b, real *c__, real *d__, real *p,
- real *q);
-
-/* Subroutine */ int slae2_(real *a, real *b, real *c__, real *rt1, real *rt2);
-
-/* Subroutine */ int slaebz_(integer *ijob, integer *nitmax, integer *n,
- integer *mmax, integer *minp, integer *nbmin, real *abstol, real *
- reltol, real *pivmin, real *d__, real *e, real *e2, integer *nval,
- real *ab, real *c__, integer *mout, integer *nab, real *work, integer
- *iwork, integer *info);
-
-/* Subroutine */ int slaed0_(integer *icompq, integer *qsiz, integer *n, real
- *d__, real *e, real *q, integer *ldq, real *qstore, integer *ldqs,
- real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int slaed1_(integer *n, real *d__, real *q, integer *ldq,
- integer *indxq, real *rho, integer *cutpnt, real *work, integer *
- iwork, integer *info);
-
-/* Subroutine */ int slaed2_(integer *k, integer *n, integer *n1, real *d__,
- real *q, integer *ldq, integer *indxq, real *rho, real *z__, real *
- dlamda, real *w, real *q2, integer *indx, integer *indxc, integer *
- indxp, integer *coltyp, integer *info);
-
-/* Subroutine */ int slaed3_(integer *k, integer *n, integer *n1, real *d__,
- real *q, integer *ldq, real *rho, real *dlamda, real *q2, integer *
- indx, integer *ctot, real *w, real *s, integer *info);
-
-/* Subroutine */ int slaed4_(integer *n, integer *i__, real *d__, real *z__,
- real *delta, real *rho, real *dlam, integer *info);
-
-/* Subroutine */ int slaed5_(integer *i__, real *d__, real *z__, real *delta,
- real *rho, real *dlam);
-
-/* Subroutine */ int slaed6_(integer *kniter, logical *orgati, real *rho,
- real *d__, real *z__, real *finit, real *tau, integer *info);
-
-/* Subroutine */ int slaed7_(integer *icompq, integer *n, integer *qsiz,
- integer *tlvls, integer *curlvl, integer *curpbm, real *d__, real *q,
- integer *ldq, integer *indxq, real *rho, integer *cutpnt, real *
- qstore, integer *qptr, integer *prmptr, integer *perm, integer *
- givptr, integer *givcol, real *givnum, real *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int slaed8_(integer *icompq, integer *k, integer *n, integer
- *qsiz, real *d__, real *q, integer *ldq, integer *indxq, real *rho,
- integer *cutpnt, real *z__, real *dlamda, real *q2, integer *ldq2,
- real *w, integer *perm, integer *givptr, integer *givcol, real *
- givnum, integer *indxp, integer *indx, integer *info);
-
-/* Subroutine */ int slaed9_(integer *k, integer *kstart, integer *kstop,
- integer *n, real *d__, real *q, integer *ldq, real *rho, real *dlamda,
- real *w, real *s, integer *lds, integer *info);
-
-/* Subroutine */ int slaeda_(integer *n, integer *tlvls, integer *curlvl,
- integer *curpbm, integer *prmptr, integer *perm, integer *givptr,
- integer *givcol, real *givnum, real *q, integer *qptr, real *z__,
- real *ztemp, integer *info);
-
-/* Subroutine */ int slaein_(logical *rightv, logical *noinit, integer *n,
- real *h__, integer *ldh, real *wr, real *wi, real *vr, real *vi, real
- *b, integer *ldb, real *work, real *eps3, real *smlnum, real *bignum,
- integer *info);
-
-/* Subroutine */ int slaev2_(real *a, real *b, real *c__, real *rt1, real *
- rt2, real *cs1, real *sn1);
-
-/* Subroutine */ int slaexc_(logical *wantq, integer *n, real *t, integer *
- ldt, real *q, integer *ldq, integer *j1, integer *n1, integer *n2,
- real *work, integer *info);
-
-/* Subroutine */ int slag2_(real *a, integer *lda, real *b, integer *ldb,
- real *safmin, real *scale1, real *scale2, real *wr1, real *wr2, real *
- wi);
-
-/* Subroutine */ int slags2_(logical *upper, real *a1, real *a2, real *a3,
- real *b1, real *b2, real *b3, real *csu, real *snu, real *csv, real *
- snv, real *csq, real *snq);
-
-/* Subroutine */ int slagtf_(integer *n, real *a, real *lambda, real *b, real
- *c__, real *tol, real *d__, integer *in, integer *info);
-
-/* Subroutine */ int slagtm_(char *trans, integer *n, integer *nrhs, real *
- alpha, real *dl, real *d__, real *du, real *x, integer *ldx, real *
- beta, real *b, integer *ldb);
-
-/* Subroutine */ int slagts_(integer *job, integer *n, real *a, real *b, real
- *c__, real *d__, integer *in, real *y, real *tol, integer *info);
-
-/* Subroutine */ int slagv2_(real *a, integer *lda, real *b, integer *ldb,
- real *alphar, real *alphai, real *beta, real *csl, real *snl, real *
- csr, real *snr);
-
-/* Subroutine */ int slahqr_(logical *wantt, logical *wantz, integer *n,
- integer *ilo, integer *ihi, real *h__, integer *ldh, real *wr, real *
- wi, integer *iloz, integer *ihiz, real *z__, integer *ldz, integer *
- info);
-
-/* Subroutine */ int slahrd_(integer *n, integer *k, integer *nb, real *a,
- integer *lda, real *tau, real *t, integer *ldt, real *y, integer *ldy);
-
-/* Subroutine */ int slaic1_(integer *job, integer *j, real *x, real *sest,
- real *w, real *gamma, real *sestpr, real *s, real *c__);
-
-/* Subroutine */ int slaln2_(logical *ltrans, integer *na, integer *nw, real *
- smin, real *ca, real *a, integer *lda, real *d1, real *d2, real *b,
- integer *ldb, real *wr, real *wi, real *x, integer *ldx, real *scale,
- real *xnorm, integer *info);
-
-/* Subroutine */ int slals0_(integer *icompq, integer *nl, integer *nr,
- integer *sqre, integer *nrhs, real *b, integer *ldb, real *bx,
- integer *ldbx, integer *perm, integer *givptr, integer *givcol,
- integer *ldgcol, real *givnum, integer *ldgnum, real *poles, real *
- difl, real *difr, real *z__, integer *k, real *c__, real *s, real *
- work, integer *info);
-
-/* Subroutine */ int slalsa_(integer *icompq, integer *smlsiz, integer *n,
- integer *nrhs, real *b, integer *ldb, real *bx, integer *ldbx, real *
- u, integer *ldu, real *vt, integer *k, real *difl, real *difr, real *
- z__, real *poles, integer *givptr, integer *givcol, integer *ldgcol,
- integer *perm, real *givnum, real *c__, real *s, real *work, integer *
- iwork, integer *info);
-
-/* Subroutine */ int slalsd_(char *uplo, integer *smlsiz, integer *n, integer
- *nrhs, real *d__, real *e, real *b, integer *ldb, real *rcond,
- integer *rank, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int slamc1_(integer *beta, integer *t, logical *rnd, logical
- *ieee1);
-
-/* Subroutine */ int slamc2_(integer *beta, integer *t, logical *rnd, real *
- eps, integer *emin, real *rmin, integer *emax, real *rmax);
-
-/* Subroutine */ int slamc4_(integer *emin, real *start, integer *base);
-
-/* Subroutine */ int slamc5_(integer *beta, integer *p, integer *emin,
- logical *ieee, integer *emax, real *rmax);
-
-/* Subroutine */ int slamrg_(integer *n1, integer *n2, real *a, integer *
- strd1, integer *strd2, integer *index);
-
-/* Subroutine */ int slanv2_(real *a, real *b, real *c__, real *d__, real *
- rt1r, real *rt1i, real *rt2r, real *rt2i, real *cs, real *sn);
-
-/* Subroutine */ int slapll_(integer *n, real *x, integer *incx, real *y,
- integer *incy, real *ssmin);
-
-/* Subroutine */ int slapmt_(logical *forwrd, integer *m, integer *n, real *x,
- integer *ldx, integer *k);
-
-/* Subroutine */ int slaqgb_(integer *m, integer *n, integer *kl, integer *ku,
- real *ab, integer *ldab, real *r__, real *c__, real *rowcnd, real *
- colcnd, real *amax, char *equed);
-
-/* Subroutine */ int slaqge_(integer *m, integer *n, real *a, integer *lda,
- real *r__, real *c__, real *rowcnd, real *colcnd, real *amax, char *
- equed);
-
-/* Subroutine */ int slaqp2_(integer *m, integer *n, integer *offset, real *a,
- integer *lda, integer *jpvt, real *tau, real *vn1, real *vn2, real *
- work);
-
-/* Subroutine */ int slaqps_(integer *m, integer *n, integer *offset, integer
- *nb, integer *kb, real *a, integer *lda, integer *jpvt, real *tau,
- real *vn1, real *vn2, real *auxv, real *f, integer *ldf);
-
-/* Subroutine */ int slaqsb_(char *uplo, integer *n, integer *kd, real *ab,
- integer *ldab, real *s, real *scond, real *amax, char *equed);
-
-/* Subroutine */ int slaqsp_(char *uplo, integer *n, real *ap, real *s, real *
- scond, real *amax, char *equed);
-
-/* Subroutine */ int slaqsy_(char *uplo, integer *n, real *a, integer *lda,
- real *s, real *scond, real *amax, char *equed);
-
-/* Subroutine */ int slaqtr_(logical *ltran, logical *lreal, integer *n, real
- *t, integer *ldt, real *b, real *w, real *scale, real *x, real *work,
- integer *info);
-
-/* Subroutine */ int slar1v_(integer *n, integer *b1, integer *bn, real *
- sigma, real *d__, real *l, real *ld, real *lld, real *gersch, real *
- z__, real *ztz, real *mingma, integer *r__, integer *isuppz, real *
- work);
-
-/* Subroutine */ int slar2v_(integer *n, real *x, real *y, real *z__, integer
- *incx, real *c__, real *s, integer *incc);
-
-/* Subroutine */ int slarf_(char *side, integer *m, integer *n, real *v,
- integer *incv, real *tau, real *c__, integer *ldc, real *work);
-
-/* Subroutine */ int slarfb_(char *side, char *trans, char *direct, char *
- storev, integer *m, integer *n, integer *k, real *v, integer *ldv,
- real *t, integer *ldt, real *c__, integer *ldc, real *work, integer *
- ldwork);
-
-/* Subroutine */ int slarfg_(integer *n, real *alpha, real *x, integer *incx,
- real *tau);
-
-/* Subroutine */ int slarft_(char *direct, char *storev, integer *n, integer *
- k, real *v, integer *ldv, real *tau, real *t, integer *ldt);
-
-/* Subroutine */ int slarfx_(char *side, integer *m, integer *n, real *v,
- real *tau, real *c__, integer *ldc, real *work);
-
-/* Subroutine */ int slargv_(integer *n, real *x, integer *incx, real *y,
- integer *incy, real *c__, integer *incc);
-
-/* Subroutine */ int slarnv_(integer *idist, integer *iseed, integer *n, real
- *x);
-
-/* Subroutine */ int slarrb_(integer *n, real *d__, real *l, real *ld, real *
- lld, integer *ifirst, integer *ilast, real *sigma, real *reltol, real
- *w, real *wgap, real *werr, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int slarre_(integer *n, real *d__, real *e, real *tol,
- integer *nsplit, integer *isplit, integer *m, real *w, real *woff,
- real *gersch, real *work, integer *info);
-
-/* Subroutine */ int slarrf_(integer *n, real *d__, real *l, real *ld, real *
- lld, integer *ifirst, integer *ilast, real *w, real *dplus, real *
- lplus, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int slarrv_(integer *n, real *d__, real *l, integer *isplit,
- integer *m, real *w, integer *iblock, real *gersch, real *tol, real *
- z__, integer *ldz, integer *isuppz, real *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int slartg_(real *f, real *g, real *cs, real *sn, real *r__);
-
-/* Subroutine */ int slartv_(integer *n, real *x, integer *incx, real *y,
- integer *incy, real *c__, real *s, integer *incc);
-
-/* Subroutine */ int slaruv_(integer *iseed, integer *n, real *x);
-
-/* Subroutine */ int slarz_(char *side, integer *m, integer *n, integer *l,
- real *v, integer *incv, real *tau, real *c__, integer *ldc, real *
- work);
-
-/* Subroutine */ int slarzb_(char *side, char *trans, char *direct, char *
- storev, integer *m, integer *n, integer *k, integer *l, real *v,
- integer *ldv, real *t, integer *ldt, real *c__, integer *ldc, real *
- work, integer *ldwork);
-
-/* Subroutine */ int slarzt_(char *direct, char *storev, integer *n, integer *
- k, real *v, integer *ldv, real *tau, real *t, integer *ldt);
-
-/* Subroutine */ int slas2_(real *f, real *g, real *h__, real *ssmin, real *
- ssmax);
-
-/* Subroutine */ int slascl_(char *type__, integer *kl, integer *ku, real *
- cfrom, real *cto, integer *m, integer *n, real *a, integer *lda,
- integer *info);
-
-/* Subroutine */ int slasd0_(integer *n, integer *sqre, real *d__, real *e,
- real *u, integer *ldu, real *vt, integer *ldvt, integer *smlsiz,
- integer *iwork, real *work, integer *info);
-
-/* Subroutine */ int slasd1_(integer *nl, integer *nr, integer *sqre, real *
- d__, real *alpha, real *beta, real *u, integer *ldu, real *vt,
- integer *ldvt, integer *idxq, integer *iwork, real *work, integer *
- info);
-
-/* Subroutine */ int slasd2_(integer *nl, integer *nr, integer *sqre, integer
- *k, real *d__, real *z__, real *alpha, real *beta, real *u, integer *
- ldu, real *vt, integer *ldvt, real *dsigma, real *u2, integer *ldu2,
- real *vt2, integer *ldvt2, integer *idxp, integer *idx, integer *idxc,
- integer *idxq, integer *coltyp, integer *info);
-
-/* Subroutine */ int slasd3_(integer *nl, integer *nr, integer *sqre, integer
- *k, real *d__, real *q, integer *ldq, real *dsigma, real *u, integer *
- ldu, real *u2, integer *ldu2, real *vt, integer *ldvt, real *vt2,
- integer *ldvt2, integer *idxc, integer *ctot, real *z__, integer *
- info);
-
-/* Subroutine */ int slasd4_(integer *n, integer *i__, real *d__, real *z__,
- real *delta, real *rho, real *sigma, real *work, integer *info);
-
-/* Subroutine */ int slasd5_(integer *i__, real *d__, real *z__, real *delta,
- real *rho, real *dsigma, real *work);
-
-/* Subroutine */ int slasd6_(integer *icompq, integer *nl, integer *nr,
- integer *sqre, real *d__, real *vf, real *vl, real *alpha, real *beta,
- integer *idxq, integer *perm, integer *givptr, integer *givcol,
- integer *ldgcol, real *givnum, integer *ldgnum, real *poles, real *
- difl, real *difr, real *z__, integer *k, real *c__, real *s, real *
- work, integer *iwork, integer *info);
-
-/* Subroutine */ int slasd7_(integer *icompq, integer *nl, integer *nr,
- integer *sqre, integer *k, real *d__, real *z__, real *zw, real *vf,
- real *vfw, real *vl, real *vlw, real *alpha, real *beta, real *dsigma,
- integer *idx, integer *idxp, integer *idxq, integer *perm, integer *
- givptr, integer *givcol, integer *ldgcol, real *givnum, integer *
- ldgnum, real *c__, real *s, integer *info);
-
-/* Subroutine */ int slasd8_(integer *icompq, integer *k, real *d__, real *
- z__, real *vf, real *vl, real *difl, real *difr, integer *lddifr,
- real *dsigma, real *work, integer *info);
-
-/* Subroutine */ int slasd9_(integer *icompq, integer *ldu, integer *k, real *
- d__, real *z__, real *vf, real *vl, real *difl, real *difr, real *
- dsigma, real *work, integer *info);
-
-/* Subroutine */ int slasda_(integer *icompq, integer *smlsiz, integer *n,
- integer *sqre, real *d__, real *e, real *u, integer *ldu, real *vt,
- integer *k, real *difl, real *difr, real *z__, real *poles, integer *
- givptr, integer *givcol, integer *ldgcol, integer *perm, real *givnum,
- real *c__, real *s, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int slasdq_(char *uplo, integer *sqre, integer *n, integer *
- ncvt, integer *nru, integer *ncc, real *d__, real *e, real *vt,
- integer *ldvt, real *u, integer *ldu, real *c__, integer *ldc, real *
- work, integer *info);
-
-/* Subroutine */ int slasdt_(integer *n, integer *lvl, integer *nd, integer *
- inode, integer *ndiml, integer *ndimr, integer *msub);
-
-/* Subroutine */ int slaset_(char *uplo, integer *m, integer *n, real *alpha,
- real *beta, real *a, integer *lda);
-
-/* Subroutine */ int slasq1_(integer *n, real *d__, real *e, real *work,
- integer *info);
-
-/* Subroutine */ int slasq2_(integer *n, real *z__, integer *info);
-
-/* Subroutine */ int slasq3_(integer *i0, integer *n0, real *z__, integer *pp,
- real *dmin__, real *sigma, real *desig, real *qmax, integer *nfail,
- integer *iter, integer *ndiv, logical *ieee);
-
-/* Subroutine */ int slasq4_(integer *i0, integer *n0, real *z__, integer *pp,
- integer *n0in, real *dmin__, real *dmin1, real *dmin2, real *dn,
- real *dn1, real *dn2, real *tau, integer *ttype);
-
-/* Subroutine */ int slasq5_(integer *i0, integer *n0, real *z__, integer *pp,
- real *tau, real *dmin__, real *dmin1, real *dmin2, real *dn, real *
- dnm1, real *dnm2, logical *ieee);
-
-/* Subroutine */ int slasq6_(integer *i0, integer *n0, real *z__, integer *pp,
- real *dmin__, real *dmin1, real *dmin2, real *dn, real *dnm1, real *
- dnm2);
-
-/* Subroutine */ int slasr_(char *side, char *pivot, char *direct, integer *m,
- integer *n, real *c__, real *s, real *a, integer *lda);
-
-/* Subroutine */ int slasrt_(char *id, integer *n, real *d__, integer *info);
-
-/* Subroutine */ int slassq_(integer *n, real *x, integer *incx, real *scale,
- real *sumsq);
-
-/* Subroutine */ int slasv2_(real *f, real *g, real *h__, real *ssmin, real *
- ssmax, real *snr, real *csr, real *snl, real *csl);
-
-/* Subroutine */ int slaswp_(integer *n, real *a, integer *lda, integer *k1,
- integer *k2, integer *ipiv, integer *incx);
-
-/* Subroutine */ int slasy2_(logical *ltranl, logical *ltranr, integer *isgn,
- integer *n1, integer *n2, real *tl, integer *ldtl, real *tr, integer *
- ldtr, real *b, integer *ldb, real *scale, real *x, integer *ldx, real
- *xnorm, integer *info);
-
-/* Subroutine */ int slasyf_(char *uplo, integer *n, integer *nb, integer *kb,
- real *a, integer *lda, integer *ipiv, real *w, integer *ldw, integer
- *info);
-
-/* Subroutine */ int slatbs_(char *uplo, char *trans, char *diag, char *
- normin, integer *n, integer *kd, real *ab, integer *ldab, real *x,
- real *scale, real *cnorm, integer *info);
-
-/* Subroutine */ int slatdf_(integer *ijob, integer *n, real *z__, integer *
- ldz, real *rhs, real *rdsum, real *rdscal, integer *ipiv, integer *
- jpiv);
-
-/* Subroutine */ int slatps_(char *uplo, char *trans, char *diag, char *
- normin, integer *n, real *ap, real *x, real *scale, real *cnorm,
- integer *info);
-
-/* Subroutine */ int slatrd_(char *uplo, integer *n, integer *nb, real *a,
- integer *lda, real *e, real *tau, real *w, integer *ldw);
-
-/* Subroutine */ int slatrs_(char *uplo, char *trans, char *diag, char *
- normin, integer *n, real *a, integer *lda, real *x, real *scale, real
- *cnorm, integer *info);
-
-/* Subroutine */ int slatrz_(integer *m, integer *n, integer *l, real *a,
- integer *lda, real *tau, real *work);
-
-/* Subroutine */ int slatzm_(char *side, integer *m, integer *n, real *v,
- integer *incv, real *tau, real *c1, real *c2, integer *ldc, real *
- work);
-
-/* Subroutine */ int slauu2_(char *uplo, integer *n, real *a, integer *lda,
- integer *info);
-
-/* Subroutine */ int slauum_(char *uplo, integer *n, real *a, integer *lda,
- integer *info);
-
-/* Subroutine */ int sopgtr_(char *uplo, integer *n, real *ap, real *tau,
- real *q, integer *ldq, real *work, integer *info);
-
-/* Subroutine */ int sopmtr_(char *side, char *uplo, char *trans, integer *m,
- integer *n, real *ap, real *tau, real *c__, integer *ldc, real *work,
- integer *info);
-
-/* Subroutine */ int sorg2l_(integer *m, integer *n, integer *k, real *a,
- integer *lda, real *tau, real *work, integer *info);
-
-/* Subroutine */ int sorg2r_(integer *m, integer *n, integer *k, real *a,
- integer *lda, real *tau, real *work, integer *info);
-
-/* Subroutine */ int sorgbr_(char *vect, integer *m, integer *n, integer *k,
- real *a, integer *lda, real *tau, real *work, integer *lwork, integer
- *info);
-
-/* Subroutine */ int sorghr_(integer *n, integer *ilo, integer *ihi, real *a,
- integer *lda, real *tau, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sorgl2_(integer *m, integer *n, integer *k, real *a,
- integer *lda, real *tau, real *work, integer *info);
-
-/* Subroutine */ int sorglq_(integer *m, integer *n, integer *k, real *a,
- integer *lda, real *tau, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sorgql_(integer *m, integer *n, integer *k, real *a,
- integer *lda, real *tau, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sorgqr_(integer *m, integer *n, integer *k, real *a,
- integer *lda, real *tau, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sorgr2_(integer *m, integer *n, integer *k, real *a,
- integer *lda, real *tau, real *work, integer *info);
-
-/* Subroutine */ int sorgrq_(integer *m, integer *n, integer *k, real *a,
- integer *lda, real *tau, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sorgtr_(char *uplo, integer *n, real *a, integer *lda,
- real *tau, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sorm2l_(char *side, char *trans, integer *m, integer *n,
- integer *k, real *a, integer *lda, real *tau, real *c__, integer *ldc,
- real *work, integer *info);
-
-/* Subroutine */ int sorm2r_(char *side, char *trans, integer *m, integer *n,
- integer *k, real *a, integer *lda, real *tau, real *c__, integer *ldc,
- real *work, integer *info);
-
-/* Subroutine */ int sormbr_(char *vect, char *side, char *trans, integer *m,
- integer *n, integer *k, real *a, integer *lda, real *tau, real *c__,
- integer *ldc, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sormhr_(char *side, char *trans, integer *m, integer *n,
- integer *ilo, integer *ihi, real *a, integer *lda, real *tau, real *
- c__, integer *ldc, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sorml2_(char *side, char *trans, integer *m, integer *n,
- integer *k, real *a, integer *lda, real *tau, real *c__, integer *ldc,
- real *work, integer *info);
-
-/* Subroutine */ int sormlq_(char *side, char *trans, integer *m, integer *n,
- integer *k, real *a, integer *lda, real *tau, real *c__, integer *ldc,
- real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sormql_(char *side, char *trans, integer *m, integer *n,
- integer *k, real *a, integer *lda, real *tau, real *c__, integer *ldc,
- real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sormqr_(char *side, char *trans, integer *m, integer *n,
- integer *k, real *a, integer *lda, real *tau, real *c__, integer *ldc,
- real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sormr2_(char *side, char *trans, integer *m, integer *n,
- integer *k, real *a, integer *lda, real *tau, real *c__, integer *ldc,
- real *work, integer *info);
-
-/* Subroutine */ int sormr3_(char *side, char *trans, integer *m, integer *n,
- integer *k, integer *l, real *a, integer *lda, real *tau, real *c__,
- integer *ldc, real *work, integer *info);
-
-/* Subroutine */ int sormrq_(char *side, char *trans, integer *m, integer *n,
- integer *k, real *a, integer *lda, real *tau, real *c__, integer *ldc,
- real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sormrz_(char *side, char *trans, integer *m, integer *n,
- integer *k, integer *l, real *a, integer *lda, real *tau, real *c__,
- integer *ldc, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int sormtr_(char *side, char *uplo, char *trans, integer *m,
- integer *n, real *a, integer *lda, real *tau, real *c__, integer *ldc,
- real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int spbcon_(char *uplo, integer *n, integer *kd, real *ab,
- integer *ldab, real *anorm, real *rcond, real *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int spbequ_(char *uplo, integer *n, integer *kd, real *ab,
- integer *ldab, real *s, real *scond, real *amax, integer *info);
-
-/* Subroutine */ int spbrfs_(char *uplo, integer *n, integer *kd, integer *
- nrhs, real *ab, integer *ldab, real *afb, integer *ldafb, real *b,
- integer *ldb, real *x, integer *ldx, real *ferr, real *berr, real *
- work, integer *iwork, integer *info);
-
-/* Subroutine */ int spbstf_(char *uplo, integer *n, integer *kd, real *ab,
- integer *ldab, integer *info);
-
-/* Subroutine */ int spbsv_(char *uplo, integer *n, integer *kd, integer *
- nrhs, real *ab, integer *ldab, real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int spbsvx_(char *fact, char *uplo, integer *n, integer *kd,
- integer *nrhs, real *ab, integer *ldab, real *afb, integer *ldafb,
- char *equed, real *s, real *b, integer *ldb, real *x, integer *ldx,
- real *rcond, real *ferr, real *berr, real *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int spbtf2_(char *uplo, integer *n, integer *kd, real *ab,
- integer *ldab, integer *info);
-
-/* Subroutine */ int spbtrf_(char *uplo, integer *n, integer *kd, real *ab,
- integer *ldab, integer *info);
-
-/* Subroutine */ int spbtrs_(char *uplo, integer *n, integer *kd, integer *
- nrhs, real *ab, integer *ldab, real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int spocon_(char *uplo, integer *n, real *a, integer *lda,
- real *anorm, real *rcond, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int spoequ_(integer *n, real *a, integer *lda, real *s, real
- *scond, real *amax, integer *info);
-
-/* Subroutine */ int sporfs_(char *uplo, integer *n, integer *nrhs, real *a,
- integer *lda, real *af, integer *ldaf, real *b, integer *ldb, real *x,
- integer *ldx, real *ferr, real *berr, real *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int sposv_(char *uplo, integer *n, integer *nrhs, real *a,
- integer *lda, real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int sposvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, real *a, integer *lda, real *af, integer *ldaf, char *equed,
- real *s, real *b, integer *ldb, real *x, integer *ldx, real *rcond,
- real *ferr, real *berr, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int spotf2_(char *uplo, integer *n, real *a, integer *lda,
- integer *info);
-
-/* Subroutine */ int spotrf_(char *uplo, integer *n, real *a, integer *lda,
- integer *info);
-
-/* Subroutine */ int spotri_(char *uplo, integer *n, real *a, integer *lda,
- integer *info);
-
-/* Subroutine */ int spotrs_(char *uplo, integer *n, integer *nrhs, real *a,
- integer *lda, real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int sppcon_(char *uplo, integer *n, real *ap, real *anorm,
- real *rcond, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int sppequ_(char *uplo, integer *n, real *ap, real *s, real *
- scond, real *amax, integer *info);
-
-/* Subroutine */ int spprfs_(char *uplo, integer *n, integer *nrhs, real *ap,
- real *afp, real *b, integer *ldb, real *x, integer *ldx, real *ferr,
- real *berr, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int sppsv_(char *uplo, integer *n, integer *nrhs, real *ap,
- real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int sppsvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, real *ap, real *afp, char *equed, real *s, real *b, integer *
- ldb, real *x, integer *ldx, real *rcond, real *ferr, real *berr, real
- *work, integer *iwork, integer *info);
-
-/* Subroutine */ int spptrf_(char *uplo, integer *n, real *ap, integer *info);
-
-/* Subroutine */ int spptri_(char *uplo, integer *n, real *ap, integer *info);
-
-/* Subroutine */ int spptrs_(char *uplo, integer *n, integer *nrhs, real *ap,
- real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int sptcon_(integer *n, real *d__, real *e, real *anorm,
- real *rcond, real *work, integer *info);
-
-/* Subroutine */ int spteqr_(char *compz, integer *n, real *d__, real *e,
- real *z__, integer *ldz, real *work, integer *info);
-
-/* Subroutine */ int sptrfs_(integer *n, integer *nrhs, real *d__, real *e,
- real *df, real *ef, real *b, integer *ldb, real *x, integer *ldx,
- real *ferr, real *berr, real *work, integer *info);
-
-/* Subroutine */ int sptsv_(integer *n, integer *nrhs, real *d__, real *e,
- real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int sptsvx_(char *fact, integer *n, integer *nrhs, real *d__,
- real *e, real *df, real *ef, real *b, integer *ldb, real *x, integer
- *ldx, real *rcond, real *ferr, real *berr, real *work, integer *info);
-
-/* Subroutine */ int spttrf_(integer *n, real *d__, real *e, integer *info);
-
-/* Subroutine */ int spttrs_(integer *n, integer *nrhs, real *d__, real *e,
- real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int sptts2_(integer *n, integer *nrhs, real *d__, real *e,
- real *b, integer *ldb);
-
-/* Subroutine */ int srscl_(integer *n, real *sa, real *sx, integer *incx);
-
-/* Subroutine */ int ssbev_(char *jobz, char *uplo, integer *n, integer *kd,
- real *ab, integer *ldab, real *w, real *z__, integer *ldz, real *work,
- integer *info);
-
-/* Subroutine */ int ssbevd_(char *jobz, char *uplo, integer *n, integer *kd,
- real *ab, integer *ldab, real *w, real *z__, integer *ldz, real *work,
- integer *lwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int ssbevx_(char *jobz, char *range, char *uplo, integer *n,
- integer *kd, real *ab, integer *ldab, real *q, integer *ldq, real *vl,
- real *vu, integer *il, integer *iu, real *abstol, integer *m, real *
- w, real *z__, integer *ldz, real *work, integer *iwork, integer *
- ifail, integer *info);
-
-/* Subroutine */ int ssbgst_(char *vect, char *uplo, integer *n, integer *ka,
- integer *kb, real *ab, integer *ldab, real *bb, integer *ldbb, real *
- x, integer *ldx, real *work, integer *info);
-
-/* Subroutine */ int ssbgv_(char *jobz, char *uplo, integer *n, integer *ka,
- integer *kb, real *ab, integer *ldab, real *bb, integer *ldbb, real *
- w, real *z__, integer *ldz, real *work, integer *info);
-
-/* Subroutine */ int ssbgvd_(char *jobz, char *uplo, integer *n, integer *ka,
- integer *kb, real *ab, integer *ldab, real *bb, integer *ldbb, real *
- w, real *z__, integer *ldz, real *work, integer *lwork, integer *
- iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int ssbgvx_(char *jobz, char *range, char *uplo, integer *n,
- integer *ka, integer *kb, real *ab, integer *ldab, real *bb, integer *
- ldbb, real *q, integer *ldq, real *vl, real *vu, integer *il, integer
- *iu, real *abstol, integer *m, real *w, real *z__, integer *ldz, real
- *work, integer *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int ssbtrd_(char *vect, char *uplo, integer *n, integer *kd,
- real *ab, integer *ldab, real *d__, real *e, real *q, integer *ldq,
- real *work, integer *info);
-
-/* Subroutine */ int sspcon_(char *uplo, integer *n, real *ap, integer *ipiv,
- real *anorm, real *rcond, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int sspev_(char *jobz, char *uplo, integer *n, real *ap,
- real *w, real *z__, integer *ldz, real *work, integer *info);
-
-/* Subroutine */ int sspevd_(char *jobz, char *uplo, integer *n, real *ap,
- real *w, real *z__, integer *ldz, real *work, integer *lwork, integer
- *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int sspevx_(char *jobz, char *range, char *uplo, integer *n,
- real *ap, real *vl, real *vu, integer *il, integer *iu, real *abstol,
- integer *m, real *w, real *z__, integer *ldz, real *work, integer *
- iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int sspgst_(integer *itype, char *uplo, integer *n, real *ap,
- real *bp, integer *info);
-
-/* Subroutine */ int sspgv_(integer *itype, char *jobz, char *uplo, integer *
- n, real *ap, real *bp, real *w, real *z__, integer *ldz, real *work,
- integer *info);
-
-/* Subroutine */ int sspgvd_(integer *itype, char *jobz, char *uplo, integer *
- n, real *ap, real *bp, real *w, real *z__, integer *ldz, real *work,
- integer *lwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int sspgvx_(integer *itype, char *jobz, char *range, char *
- uplo, integer *n, real *ap, real *bp, real *vl, real *vu, integer *il,
- integer *iu, real *abstol, integer *m, real *w, real *z__, integer *
- ldz, real *work, integer *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int ssprfs_(char *uplo, integer *n, integer *nrhs, real *ap,
- real *afp, integer *ipiv, real *b, integer *ldb, real *x, integer *
- ldx, real *ferr, real *berr, real *work, integer *iwork, integer *
- info);
-
-/* Subroutine */ int sspsv_(char *uplo, integer *n, integer *nrhs, real *ap,
- integer *ipiv, real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int sspsvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, real *ap, real *afp, integer *ipiv, real *b, integer *ldb, real
- *x, integer *ldx, real *rcond, real *ferr, real *berr, real *work,
- integer *iwork, integer *info);
-
-/* Subroutine */ int ssptrd_(char *uplo, integer *n, real *ap, real *d__,
- real *e, real *tau, integer *info);
-
-/* Subroutine */ int ssptrf_(char *uplo, integer *n, real *ap, integer *ipiv,
- integer *info);
-
-/* Subroutine */ int ssptri_(char *uplo, integer *n, real *ap, integer *ipiv,
- real *work, integer *info);
-
-/* Subroutine */ int ssptrs_(char *uplo, integer *n, integer *nrhs, real *ap,
- integer *ipiv, real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int sstebz_(char *range, char *order, integer *n, real *vl,
- real *vu, integer *il, integer *iu, real *abstol, real *d__, real *e,
- integer *m, integer *nsplit, real *w, integer *iblock, integer *
- isplit, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int sstedc_(char *compz, integer *n, real *d__, real *e,
- real *z__, integer *ldz, real *work, integer *lwork, integer *iwork,
- integer *liwork, integer *info);
-
-/* Subroutine */ int sstegr_(char *jobz, char *range, integer *n, real *d__,
- real *e, real *vl, real *vu, integer *il, integer *iu, real *abstol,
- integer *m, real *w, real *z__, integer *ldz, integer *isuppz, real *
- work, integer *lwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int sstein_(integer *n, real *d__, real *e, integer *m, real
- *w, integer *iblock, integer *isplit, real *z__, integer *ldz, real *
- work, integer *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int ssteqr_(char *compz, integer *n, real *d__, real *e,
- real *z__, integer *ldz, real *work, integer *info);
-
-/* Subroutine */ int ssterf_(integer *n, real *d__, real *e, integer *info);
-
-/* Subroutine */ int sstev_(char *jobz, integer *n, real *d__, real *e, real *
- z__, integer *ldz, real *work, integer *info);
-
-/* Subroutine */ int sstevd_(char *jobz, integer *n, real *d__, real *e, real
- *z__, integer *ldz, real *work, integer *lwork, integer *iwork,
- integer *liwork, integer *info);
-
-/* Subroutine */ int sstevr_(char *jobz, char *range, integer *n, real *d__,
- real *e, real *vl, real *vu, integer *il, integer *iu, real *abstol,
- integer *m, real *w, real *z__, integer *ldz, integer *isuppz, real *
- work, integer *lwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int sstevx_(char *jobz, char *range, integer *n, real *d__,
- real *e, real *vl, real *vu, integer *il, integer *iu, real *abstol,
- integer *m, real *w, real *z__, integer *ldz, real *work, integer *
- iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int ssycon_(char *uplo, integer *n, real *a, integer *lda,
- integer *ipiv, real *anorm, real *rcond, real *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int ssyev_(char *jobz, char *uplo, integer *n, real *a,
- integer *lda, real *w, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int ssyevd_(char *jobz, char *uplo, integer *n, real *a,
- integer *lda, real *w, real *work, integer *lwork, integer *iwork,
- integer *liwork, integer *info);
-
-/* Subroutine */ int ssyevr_(char *jobz, char *range, char *uplo, integer *n,
- real *a, integer *lda, real *vl, real *vu, integer *il, integer *iu,
- real *abstol, integer *m, real *w, real *z__, integer *ldz, integer *
- isuppz, real *work, integer *lwork, integer *iwork, integer *liwork,
- integer *info);
-
-/* Subroutine */ int ssyevx_(char *jobz, char *range, char *uplo, integer *n,
- real *a, integer *lda, real *vl, real *vu, integer *il, integer *iu,
- real *abstol, integer *m, real *w, real *z__, integer *ldz, real *
- work, integer *lwork, integer *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int ssygs2_(integer *itype, char *uplo, integer *n, real *a,
- integer *lda, real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int ssygst_(integer *itype, char *uplo, integer *n, real *a,
- integer *lda, real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int ssygv_(integer *itype, char *jobz, char *uplo, integer *
- n, real *a, integer *lda, real *b, integer *ldb, real *w, real *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int ssygvd_(integer *itype, char *jobz, char *uplo, integer *
- n, real *a, integer *lda, real *b, integer *ldb, real *w, real *work,
- integer *lwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int ssygvx_(integer *itype, char *jobz, char *range, char *
- uplo, integer *n, real *a, integer *lda, real *b, integer *ldb, real *
- vl, real *vu, integer *il, integer *iu, real *abstol, integer *m,
- real *w, real *z__, integer *ldz, real *work, integer *lwork, integer
- *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int ssyrfs_(char *uplo, integer *n, integer *nrhs, real *a,
- integer *lda, real *af, integer *ldaf, integer *ipiv, real *b,
- integer *ldb, real *x, integer *ldx, real *ferr, real *berr, real *
- work, integer *iwork, integer *info);
-
-/* Subroutine */ int ssysv_(char *uplo, integer *n, integer *nrhs, real *a,
- integer *lda, integer *ipiv, real *b, integer *ldb, real *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int ssysvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, real *a, integer *lda, real *af, integer *ldaf, integer *ipiv,
- real *b, integer *ldb, real *x, integer *ldx, real *rcond, real *ferr,
- real *berr, real *work, integer *lwork, integer *iwork, integer *
- info);
-
-/* Subroutine */ int ssytd2_(char *uplo, integer *n, real *a, integer *lda,
- real *d__, real *e, real *tau, integer *info);
-
-/* Subroutine */ int ssytf2_(char *uplo, integer *n, real *a, integer *lda,
- integer *ipiv, integer *info);
-
-/* Subroutine */ int ssytrd_(char *uplo, integer *n, real *a, integer *lda,
- real *d__, real *e, real *tau, real *work, integer *lwork, integer *
- info);
-
-/* Subroutine */ int ssytrf_(char *uplo, integer *n, real *a, integer *lda,
- integer *ipiv, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int ssytri_(char *uplo, integer *n, real *a, integer *lda,
- integer *ipiv, real *work, integer *info);
-
-/* Subroutine */ int ssytrs_(char *uplo, integer *n, integer *nrhs, real *a,
- integer *lda, integer *ipiv, real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int stbcon_(char *norm, char *uplo, char *diag, integer *n,
- integer *kd, real *ab, integer *ldab, real *rcond, real *work,
- integer *iwork, integer *info);
-
-/* Subroutine */ int stbrfs_(char *uplo, char *trans, char *diag, integer *n,
- integer *kd, integer *nrhs, real *ab, integer *ldab, real *b, integer
- *ldb, real *x, integer *ldx, real *ferr, real *berr, real *work,
- integer *iwork, integer *info);
-
-/* Subroutine */ int stbtrs_(char *uplo, char *trans, char *diag, integer *n,
- integer *kd, integer *nrhs, real *ab, integer *ldab, real *b, integer
- *ldb, integer *info);
-
-/* Subroutine */ int stgevc_(char *side, char *howmny, logical *select,
- integer *n, real *a, integer *lda, real *b, integer *ldb, real *vl,
- integer *ldvl, real *vr, integer *ldvr, integer *mm, integer *m, real
- *work, integer *info);
-
-/* Subroutine */ int stgex2_(logical *wantq, logical *wantz, integer *n, real
- *a, integer *lda, real *b, integer *ldb, real *q, integer *ldq, real *
- z__, integer *ldz, integer *j1, integer *n1, integer *n2, real *work,
- integer *lwork, integer *info);
-
-/* Subroutine */ int stgexc_(logical *wantq, logical *wantz, integer *n, real
- *a, integer *lda, real *b, integer *ldb, real *q, integer *ldq, real *
- z__, integer *ldz, integer *ifst, integer *ilst, real *work, integer *
- lwork, integer *info);
-
-/* Subroutine */ int stgsen_(integer *ijob, logical *wantq, logical *wantz,
- logical *select, integer *n, real *a, integer *lda, real *b, integer *
- ldb, real *alphar, real *alphai, real *beta, real *q, integer *ldq,
- real *z__, integer *ldz, integer *m, real *pl, real *pr, real *dif,
- real *work, integer *lwork, integer *iwork, integer *liwork, integer *
- info);
-
-/* Subroutine */ int stgsja_(char *jobu, char *jobv, char *jobq, integer *m,
- integer *p, integer *n, integer *k, integer *l, real *a, integer *lda,
- real *b, integer *ldb, real *tola, real *tolb, real *alpha, real *
- beta, real *u, integer *ldu, real *v, integer *ldv, real *q, integer *
- ldq, real *work, integer *ncycle, integer *info);
-
-/* Subroutine */ int stgsna_(char *job, char *howmny, logical *select,
- integer *n, real *a, integer *lda, real *b, integer *ldb, real *vl,
- integer *ldvl, real *vr, integer *ldvr, real *s, real *dif, integer *
- mm, integer *m, real *work, integer *lwork, integer *iwork, integer *
- info);
-
-/* Subroutine */ int stgsy2_(char *trans, integer *ijob, integer *m, integer *
- n, real *a, integer *lda, real *b, integer *ldb, real *c__, integer *
- ldc, real *d__, integer *ldd, real *e, integer *lde, real *f, integer
- *ldf, real *scale, real *rdsum, real *rdscal, integer *iwork, integer
- *pq, integer *info);
-
-/* Subroutine */ int stgsyl_(char *trans, integer *ijob, integer *m, integer *
- n, real *a, integer *lda, real *b, integer *ldb, real *c__, integer *
- ldc, real *d__, integer *ldd, real *e, integer *lde, real *f, integer
- *ldf, real *scale, real *dif, real *work, integer *lwork, integer *
- iwork, integer *info);
-
-/* Subroutine */ int stpcon_(char *norm, char *uplo, char *diag, integer *n,
- real *ap, real *rcond, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int stprfs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, real *ap, real *b, integer *ldb, real *x, integer *ldx,
- real *ferr, real *berr, real *work, integer *iwork, integer *info);
-
-/* Subroutine */ int stptri_(char *uplo, char *diag, integer *n, real *ap,
- integer *info);
-
-/* Subroutine */ int stptrs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, real *ap, real *b, integer *ldb, integer *info);
-
-/* Subroutine */ int strcon_(char *norm, char *uplo, char *diag, integer *n,
- real *a, integer *lda, real *rcond, real *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int strevc_(char *side, char *howmny, logical *select,
- integer *n, real *t, integer *ldt, real *vl, integer *ldvl, real *vr,
- integer *ldvr, integer *mm, integer *m, real *work, integer *info);
-
-/* Subroutine */ int strexc_(char *compq, integer *n, real *t, integer *ldt,
- real *q, integer *ldq, integer *ifst, integer *ilst, real *work,
- integer *info);
-
-/* Subroutine */ int strrfs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, real *a, integer *lda, real *b, integer *ldb, real *x,
- integer *ldx, real *ferr, real *berr, real *work, integer *iwork,
- integer *info);
-
-/* Subroutine */ int strsen_(char *job, char *compq, logical *select, integer
- *n, real *t, integer *ldt, real *q, integer *ldq, real *wr, real *wi,
- integer *m, real *s, real *sep, real *work, integer *lwork, integer *
- iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int strsna_(char *job, char *howmny, logical *select,
- integer *n, real *t, integer *ldt, real *vl, integer *ldvl, real *vr,
- integer *ldvr, real *s, real *sep, integer *mm, integer *m, real *
- work, integer *ldwork, integer *iwork, integer *info);
-
-/* Subroutine */ int strsyl_(char *trana, char *tranb, integer *isgn, integer
- *m, integer *n, real *a, integer *lda, real *b, integer *ldb, real *
- c__, integer *ldc, real *scale, integer *info);
-
-/* Subroutine */ int strti2_(char *uplo, char *diag, integer *n, real *a,
- integer *lda, integer *info);
-
-/* Subroutine */ int strtri_(char *uplo, char *diag, integer *n, real *a,
- integer *lda, integer *info);
-
-/* Subroutine */ int strtrs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, real *a, integer *lda, real *b, integer *ldb, integer *
- info);
-
-/* Subroutine */ int stzrqf_(integer *m, integer *n, real *a, integer *lda,
- real *tau, integer *info);
-
-/* Subroutine */ int stzrzf_(integer *m, integer *n, real *a, integer *lda,
- real *tau, real *work, integer *lwork, integer *info);
-
-/* Subroutine */ int xerbla_(char *srname, integer *info);
-
-/* Subroutine */ int zbdsqr_(char *uplo, integer *n, integer *ncvt, integer *
- nru, integer *ncc, doublereal *d__, doublereal *e, doublecomplex *vt,
- integer *ldvt, doublecomplex *u, integer *ldu, doublecomplex *c__,
- integer *ldc, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zdrot_(integer *n, doublecomplex *cx, integer *incx,
- doublecomplex *cy, integer *incy, doublereal *c__, doublereal *s);
-
-/* Subroutine */ int zdrscl_(integer *n, doublereal *sa, doublecomplex *sx,
- integer *incx);
-
-/* Subroutine */ int zgbbrd_(char *vect, integer *m, integer *n, integer *ncc,
- integer *kl, integer *ku, doublecomplex *ab, integer *ldab,
- doublereal *d__, doublereal *e, doublecomplex *q, integer *ldq,
- doublecomplex *pt, integer *ldpt, doublecomplex *c__, integer *ldc,
- doublecomplex *work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgbcon_(char *norm, integer *n, integer *kl, integer *ku,
- doublecomplex *ab, integer *ldab, integer *ipiv, doublereal *anorm,
- doublereal *rcond, doublecomplex *work, doublereal *rwork, integer *
- info);
-
-/* Subroutine */ int zgbequ_(integer *m, integer *n, integer *kl, integer *ku,
- doublecomplex *ab, integer *ldab, doublereal *r__, doublereal *c__,
- doublereal *rowcnd, doublereal *colcnd, doublereal *amax, integer *
- info);
-
-/* Subroutine */ int zgbrfs_(char *trans, integer *n, integer *kl, integer *
- ku, integer *nrhs, doublecomplex *ab, integer *ldab, doublecomplex *
- afb, integer *ldafb, integer *ipiv, doublecomplex *b, integer *ldb,
- doublecomplex *x, integer *ldx, doublereal *ferr, doublereal *berr,
- doublecomplex *work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgbsv_(integer *n, integer *kl, integer *ku, integer *
- nrhs, doublecomplex *ab, integer *ldab, integer *ipiv, doublecomplex *
- b, integer *ldb, integer *info);
-
-/* Subroutine */ int zgbsvx_(char *fact, char *trans, integer *n, integer *kl,
- integer *ku, integer *nrhs, doublecomplex *ab, integer *ldab,
- doublecomplex *afb, integer *ldafb, integer *ipiv, char *equed,
- doublereal *r__, doublereal *c__, doublecomplex *b, integer *ldb,
- doublecomplex *x, integer *ldx, doublereal *rcond, doublereal *ferr,
- doublereal *berr, doublecomplex *work, doublereal *rwork, integer *
- info);
-
-/* Subroutine */ int zgbtf2_(integer *m, integer *n, integer *kl, integer *ku,
- doublecomplex *ab, integer *ldab, integer *ipiv, integer *info);
-
-/* Subroutine */ int zgbtrf_(integer *m, integer *n, integer *kl, integer *ku,
- doublecomplex *ab, integer *ldab, integer *ipiv, integer *info);
-
-/* Subroutine */ int zgbtrs_(char *trans, integer *n, integer *kl, integer *
- ku, integer *nrhs, doublecomplex *ab, integer *ldab, integer *ipiv,
- doublecomplex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int zgebak_(char *job, char *side, integer *n, integer *ilo,
- integer *ihi, doublereal *scale, integer *m, doublecomplex *v,
- integer *ldv, integer *info);
-
-/* Subroutine */ int zgebal_(char *job, integer *n, doublecomplex *a, integer
- *lda, integer *ilo, integer *ihi, doublereal *scale, integer *info);
-
-/* Subroutine */ int zgebd2_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublereal *d__, doublereal *e, doublecomplex *tauq,
- doublecomplex *taup, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zgebrd_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublereal *d__, doublereal *e, doublecomplex *tauq,
- doublecomplex *taup, doublecomplex *work, integer *lwork, integer *
- info);
-
-/* Subroutine */ int zgecon_(char *norm, integer *n, doublecomplex *a,
- integer *lda, doublereal *anorm, doublereal *rcond, doublecomplex *
- work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgeequ_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublereal *r__, doublereal *c__, doublereal *rowcnd,
- doublereal *colcnd, doublereal *amax, integer *info);
-
-/* Subroutine */ int zgees_(char *jobvs, char *sort, L_fp select, integer *n,
- doublecomplex *a, integer *lda, integer *sdim, doublecomplex *w,
- doublecomplex *vs, integer *ldvs, doublecomplex *work, integer *lwork,
- doublereal *rwork, logical *bwork, integer *info);
-
-/* Subroutine */ int zgeesx_(char *jobvs, char *sort, L_fp select, char *
- sense, integer *n, doublecomplex *a, integer *lda, integer *sdim,
- doublecomplex *w, doublecomplex *vs, integer *ldvs, doublereal *
- rconde, doublereal *rcondv, doublecomplex *work, integer *lwork,
- doublereal *rwork, logical *bwork, integer *info);
-
-/* Subroutine */ int zgeev_(char *jobvl, char *jobvr, integer *n,
- doublecomplex *a, integer *lda, doublecomplex *w, doublecomplex *vl,
- integer *ldvl, doublecomplex *vr, integer *ldvr, doublecomplex *work,
- integer *lwork, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgeevx_(char *balanc, char *jobvl, char *jobvr, char *
- sense, integer *n, doublecomplex *a, integer *lda, doublecomplex *w,
- doublecomplex *vl, integer *ldvl, doublecomplex *vr, integer *ldvr,
- integer *ilo, integer *ihi, doublereal *scale, doublereal *abnrm,
- doublereal *rconde, doublereal *rcondv, doublecomplex *work, integer *
- lwork, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgegs_(char *jobvsl, char *jobvsr, integer *n,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- doublecomplex *alpha, doublecomplex *beta, doublecomplex *vsl,
- integer *ldvsl, doublecomplex *vsr, integer *ldvsr, doublecomplex *
- work, integer *lwork, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgegv_(char *jobvl, char *jobvr, integer *n,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- doublecomplex *alpha, doublecomplex *beta, doublecomplex *vl, integer
- *ldvl, doublecomplex *vr, integer *ldvr, doublecomplex *work, integer
- *lwork, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgehd2_(integer *n, integer *ilo, integer *ihi,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *
- work, integer *info);
-
-/* Subroutine */ int zgehrd_(integer *n, integer *ilo, integer *ihi,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *
- work, integer *lwork, integer *info);
-
-/* Subroutine */ int zgelq2_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublecomplex *tau, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zgelqf_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublecomplex *tau, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zgels_(char *trans, integer *m, integer *n, integer *
- nrhs, doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- doublecomplex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int zgelsx_(integer *m, integer *n, integer *nrhs,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- integer *jpvt, doublereal *rcond, integer *rank, doublecomplex *work,
- doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgelsy_(integer *m, integer *n, integer *nrhs,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- integer *jpvt, doublereal *rcond, integer *rank, doublecomplex *work,
- integer *lwork, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgeql2_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublecomplex *tau, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zgeqlf_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublecomplex *tau, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zgeqp3_(integer *m, integer *n, doublecomplex *a,
- integer *lda, integer *jpvt, doublecomplex *tau, doublecomplex *work,
- integer *lwork, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgeqpf_(integer *m, integer *n, doublecomplex *a,
- integer *lda, integer *jpvt, doublecomplex *tau, doublecomplex *work,
- doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgeqr2_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublecomplex *tau, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zgeqrf_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublecomplex *tau, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zgerfs_(char *trans, integer *n, integer *nrhs,
- doublecomplex *a, integer *lda, doublecomplex *af, integer *ldaf,
- integer *ipiv, doublecomplex *b, integer *ldb, doublecomplex *x,
- integer *ldx, doublereal *ferr, doublereal *berr, doublecomplex *work,
- doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgerq2_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublecomplex *tau, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zgerqf_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublecomplex *tau, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zgesc2_(integer *n, doublecomplex *a, integer *lda,
- doublecomplex *rhs, integer *ipiv, integer *jpiv, doublereal *scale);
-
-/* Subroutine */ int zgesv_(integer *n, integer *nrhs, doublecomplex *a,
- integer *lda, integer *ipiv, doublecomplex *b, integer *ldb, integer *
- info);
-
-/* Subroutine */ int zgesvx_(char *fact, char *trans, integer *n, integer *
- nrhs, doublecomplex *a, integer *lda, doublecomplex *af, integer *
- ldaf, integer *ipiv, char *equed, doublereal *r__, doublereal *c__,
- doublecomplex *b, integer *ldb, doublecomplex *x, integer *ldx,
- doublereal *rcond, doublereal *ferr, doublereal *berr, doublecomplex *
- work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgetc2_(integer *n, doublecomplex *a, integer *lda,
- integer *ipiv, integer *jpiv, integer *info);
-
-/* Subroutine */ int zgetf2_(integer *m, integer *n, doublecomplex *a,
- integer *lda, integer *ipiv, integer *info);
-
-/* Subroutine */ int zgetrf_(integer *m, integer *n, doublecomplex *a,
- integer *lda, integer *ipiv, integer *info);
-
-/* Subroutine */ int zgetri_(integer *n, doublecomplex *a, integer *lda,
- integer *ipiv, doublecomplex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int zgetrs_(char *trans, integer *n, integer *nrhs,
- doublecomplex *a, integer *lda, integer *ipiv, doublecomplex *b,
- integer *ldb, integer *info);
-
-/* Subroutine */ int zggbak_(char *job, char *side, integer *n, integer *ilo,
- integer *ihi, doublereal *lscale, doublereal *rscale, integer *m,
- doublecomplex *v, integer *ldv, integer *info);
-
-/* Subroutine */ int zggbal_(char *job, integer *n, doublecomplex *a, integer
- *lda, doublecomplex *b, integer *ldb, integer *ilo, integer *ihi,
- doublereal *lscale, doublereal *rscale, doublereal *work, integer *
- info);
-
-/* Subroutine */ int zgges_(char *jobvsl, char *jobvsr, char *sort, L_fp
- delctg, integer *n, doublecomplex *a, integer *lda, doublecomplex *b,
- integer *ldb, integer *sdim, doublecomplex *alpha, doublecomplex *
- beta, doublecomplex *vsl, integer *ldvsl, doublecomplex *vsr, integer
- *ldvsr, doublecomplex *work, integer *lwork, doublereal *rwork,
- logical *bwork, integer *info);
-
-/* Subroutine */ int zggesx_(char *jobvsl, char *jobvsr, char *sort, L_fp
- delctg, char *sense, integer *n, doublecomplex *a, integer *lda,
- doublecomplex *b, integer *ldb, integer *sdim, doublecomplex *alpha,
- doublecomplex *beta, doublecomplex *vsl, integer *ldvsl,
- doublecomplex *vsr, integer *ldvsr, doublereal *rconde, doublereal *
- rcondv, doublecomplex *work, integer *lwork, doublereal *rwork,
- integer *iwork, integer *liwork, logical *bwork, integer *info);
-
-/* Subroutine */ int zggev_(char *jobvl, char *jobvr, integer *n,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- doublecomplex *alpha, doublecomplex *beta, doublecomplex *vl, integer
- *ldvl, doublecomplex *vr, integer *ldvr, doublecomplex *work, integer
- *lwork, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zggevx_(char *balanc, char *jobvl, char *jobvr, char *
- sense, integer *n, doublecomplex *a, integer *lda, doublecomplex *b,
- integer *ldb, doublecomplex *alpha, doublecomplex *beta,
- doublecomplex *vl, integer *ldvl, doublecomplex *vr, integer *ldvr,
- integer *ilo, integer *ihi, doublereal *lscale, doublereal *rscale,
- doublereal *abnrm, doublereal *bbnrm, doublereal *rconde, doublereal *
- rcondv, doublecomplex *work, integer *lwork, doublereal *rwork,
- integer *iwork, logical *bwork, integer *info);
-
-/* Subroutine */ int zggglm_(integer *n, integer *m, integer *p,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- doublecomplex *d__, doublecomplex *x, doublecomplex *y, doublecomplex
- *work, integer *lwork, integer *info);
-
-/* Subroutine */ int zgghrd_(char *compq, char *compz, integer *n, integer *
- ilo, integer *ihi, doublecomplex *a, integer *lda, doublecomplex *b,
- integer *ldb, doublecomplex *q, integer *ldq, doublecomplex *z__,
- integer *ldz, integer *info);
-
-/* Subroutine */ int zgglse_(integer *m, integer *n, integer *p,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- doublecomplex *c__, doublecomplex *d__, doublecomplex *x,
- doublecomplex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int zggqrf_(integer *n, integer *m, integer *p,
- doublecomplex *a, integer *lda, doublecomplex *taua, doublecomplex *b,
- integer *ldb, doublecomplex *taub, doublecomplex *work, integer *
- lwork, integer *info);
-
-/* Subroutine */ int zggrqf_(integer *m, integer *p, integer *n,
- doublecomplex *a, integer *lda, doublecomplex *taua, doublecomplex *b,
- integer *ldb, doublecomplex *taub, doublecomplex *work, integer *
- lwork, integer *info);
-
-/* Subroutine */ int zggsvd_(char *jobu, char *jobv, char *jobq, integer *m,
- integer *n, integer *p, integer *k, integer *l, doublecomplex *a,
- integer *lda, doublecomplex *b, integer *ldb, doublereal *alpha,
- doublereal *beta, doublecomplex *u, integer *ldu, doublecomplex *v,
- integer *ldv, doublecomplex *q, integer *ldq, doublecomplex *work,
- doublereal *rwork, integer *iwork, integer *info);
-
-/* Subroutine */ int zggsvp_(char *jobu, char *jobv, char *jobq, integer *m,
- integer *p, integer *n, doublecomplex *a, integer *lda, doublecomplex
- *b, integer *ldb, doublereal *tola, doublereal *tolb, integer *k,
- integer *l, doublecomplex *u, integer *ldu, doublecomplex *v, integer
- *ldv, doublecomplex *q, integer *ldq, integer *iwork, doublereal *
- rwork, doublecomplex *tau, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zgtcon_(char *norm, integer *n, doublecomplex *dl,
- doublecomplex *d__, doublecomplex *du, doublecomplex *du2, integer *
- ipiv, doublereal *anorm, doublereal *rcond, doublecomplex *work,
- integer *info);
-
-/* Subroutine */ int zgtrfs_(char *trans, integer *n, integer *nrhs,
- doublecomplex *dl, doublecomplex *d__, doublecomplex *du,
- doublecomplex *dlf, doublecomplex *df, doublecomplex *duf,
- doublecomplex *du2, integer *ipiv, doublecomplex *b, integer *ldb,
- doublecomplex *x, integer *ldx, doublereal *ferr, doublereal *berr,
- doublecomplex *work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zgtsv_(integer *n, integer *nrhs, doublecomplex *dl,
- doublecomplex *d__, doublecomplex *du, doublecomplex *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int zgtsvx_(char *fact, char *trans, integer *n, integer *
- nrhs, doublecomplex *dl, doublecomplex *d__, doublecomplex *du,
- doublecomplex *dlf, doublecomplex *df, doublecomplex *duf,
- doublecomplex *du2, integer *ipiv, doublecomplex *b, integer *ldb,
- doublecomplex *x, integer *ldx, doublereal *rcond, doublereal *ferr,
- doublereal *berr, doublecomplex *work, doublereal *rwork, integer *
- info);
-
-/* Subroutine */ int zgttrf_(integer *n, doublecomplex *dl, doublecomplex *
- d__, doublecomplex *du, doublecomplex *du2, integer *ipiv, integer *
- info);
-
-/* Subroutine */ int zgttrs_(char *trans, integer *n, integer *nrhs,
- doublecomplex *dl, doublecomplex *d__, doublecomplex *du,
- doublecomplex *du2, integer *ipiv, doublecomplex *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int zgtts2_(integer *itrans, integer *n, integer *nrhs,
- doublecomplex *dl, doublecomplex *d__, doublecomplex *du,
- doublecomplex *du2, integer *ipiv, doublecomplex *b, integer *ldb);
-
-/* Subroutine */ int zhbev_(char *jobz, char *uplo, integer *n, integer *kd,
- doublecomplex *ab, integer *ldab, doublereal *w, doublecomplex *z__,
- integer *ldz, doublecomplex *work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zhbevd_(char *jobz, char *uplo, integer *n, integer *kd,
- doublecomplex *ab, integer *ldab, doublereal *w, doublecomplex *z__,
- integer *ldz, doublecomplex *work, integer *lwork, doublereal *rwork,
- integer *lrwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int zhbevx_(char *jobz, char *range, char *uplo, integer *n,
- integer *kd, doublecomplex *ab, integer *ldab, doublecomplex *q,
- integer *ldq, doublereal *vl, doublereal *vu, integer *il, integer *
- iu, doublereal *abstol, integer *m, doublereal *w, doublecomplex *z__,
- integer *ldz, doublecomplex *work, doublereal *rwork, integer *iwork,
- integer *ifail, integer *info);
-
-/* Subroutine */ int zhbgst_(char *vect, char *uplo, integer *n, integer *ka,
- integer *kb, doublecomplex *ab, integer *ldab, doublecomplex *bb,
- integer *ldbb, doublecomplex *x, integer *ldx, doublecomplex *work,
- doublereal *rwork, integer *info);
-
-/* Subroutine */ int zhbgv_(char *jobz, char *uplo, integer *n, integer *ka,
- integer *kb, doublecomplex *ab, integer *ldab, doublecomplex *bb,
- integer *ldbb, doublereal *w, doublecomplex *z__, integer *ldz,
- doublecomplex *work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zhbgvx_(char *jobz, char *range, char *uplo, integer *n,
- integer *ka, integer *kb, doublecomplex *ab, integer *ldab,
- doublecomplex *bb, integer *ldbb, doublecomplex *q, integer *ldq,
- doublereal *vl, doublereal *vu, integer *il, integer *iu, doublereal *
- abstol, integer *m, doublereal *w, doublecomplex *z__, integer *ldz,
- doublecomplex *work, doublereal *rwork, integer *iwork, integer *
- ifail, integer *info);
-
-/* Subroutine */ int zhbtrd_(char *vect, char *uplo, integer *n, integer *kd,
- doublecomplex *ab, integer *ldab, doublereal *d__, doublereal *e,
- doublecomplex *q, integer *ldq, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zhecon_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, integer *ipiv, doublereal *anorm, doublereal *rcond,
- doublecomplex *work, integer *info);
-
-/* Subroutine */ int zheev_(char *jobz, char *uplo, integer *n, doublecomplex
- *a, integer *lda, doublereal *w, doublecomplex *work, integer *lwork,
- doublereal *rwork, integer *info);
-
-/* Subroutine */ int zheevd_(char *jobz, char *uplo, integer *n,
- doublecomplex *a, integer *lda, doublereal *w, doublecomplex *work,
- integer *lwork, doublereal *rwork, integer *lrwork, integer *iwork,
- integer *liwork, integer *info);
-
-/* Subroutine */ int zheevr_(char *jobz, char *range, char *uplo, integer *n,
- doublecomplex *a, integer *lda, doublereal *vl, doublereal *vu,
- integer *il, integer *iu, doublereal *abstol, integer *m, doublereal *
- w, doublecomplex *z__, integer *ldz, integer *isuppz, doublecomplex *
- work, integer *lwork, doublereal *rwork, integer *lrwork, integer *
- iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int zheevx_(char *jobz, char *range, char *uplo, integer *n,
- doublecomplex *a, integer *lda, doublereal *vl, doublereal *vu,
- integer *il, integer *iu, doublereal *abstol, integer *m, doublereal *
- w, doublecomplex *z__, integer *ldz, doublecomplex *work, integer *
- lwork, doublereal *rwork, integer *iwork, integer *ifail, integer *
- info);
-
-/* Subroutine */ int zhegs2_(integer *itype, char *uplo, integer *n,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int zhegst_(integer *itype, char *uplo, integer *n,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int zhegv_(integer *itype, char *jobz, char *uplo, integer *
- n, doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- doublereal *w, doublecomplex *work, integer *lwork, doublereal *rwork,
- integer *info);
-
-/* Subroutine */ int zhegvd_(integer *itype, char *jobz, char *uplo, integer *
- n, doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- doublereal *w, doublecomplex *work, integer *lwork, doublereal *rwork,
- integer *lrwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int zhegvx_(integer *itype, char *jobz, char *range, char *
- uplo, integer *n, doublecomplex *a, integer *lda, doublecomplex *b,
- integer *ldb, doublereal *vl, doublereal *vu, integer *il, integer *
- iu, doublereal *abstol, integer *m, doublereal *w, doublecomplex *z__,
- integer *ldz, doublecomplex *work, integer *lwork, doublereal *rwork,
- integer *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int zherfs_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *a, integer *lda, doublecomplex *af, integer *ldaf,
- integer *ipiv, doublecomplex *b, integer *ldb, doublecomplex *x,
- integer *ldx, doublereal *ferr, doublereal *berr, doublecomplex *work,
- doublereal *rwork, integer *info);
-
-/* Subroutine */ int zhesv_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *a, integer *lda, integer *ipiv, doublecomplex *b,
- integer *ldb, doublecomplex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int zhesvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, doublecomplex *a, integer *lda, doublecomplex *af, integer *
- ldaf, integer *ipiv, doublecomplex *b, integer *ldb, doublecomplex *x,
- integer *ldx, doublereal *rcond, doublereal *ferr, doublereal *berr,
- doublecomplex *work, integer *lwork, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zhetf2_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, integer *ipiv, integer *info);
-
-/* Subroutine */ int zhetrd_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, doublereal *d__, doublereal *e, doublecomplex *tau,
- doublecomplex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int zhetrf_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, integer *ipiv, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zhetri_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, integer *ipiv, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zhetrs_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *a, integer *lda, integer *ipiv, doublecomplex *b,
- integer *ldb, integer *info);
-
-/* Subroutine */ int zhgeqz_(char *job, char *compq, char *compz, integer *n,
- integer *ilo, integer *ihi, doublecomplex *a, integer *lda,
- doublecomplex *b, integer *ldb, doublecomplex *alpha, doublecomplex *
- beta, doublecomplex *q, integer *ldq, doublecomplex *z__, integer *
- ldz, doublecomplex *work, integer *lwork, doublereal *rwork, integer *
- info);
-
-/* Subroutine */ int zhpcon_(char *uplo, integer *n, doublecomplex *ap,
- integer *ipiv, doublereal *anorm, doublereal *rcond, doublecomplex *
- work, integer *info);
-
-/* Subroutine */ int zhpev_(char *jobz, char *uplo, integer *n, doublecomplex
- *ap, doublereal *w, doublecomplex *z__, integer *ldz, doublecomplex *
- work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zhpevd_(char *jobz, char *uplo, integer *n,
- doublecomplex *ap, doublereal *w, doublecomplex *z__, integer *ldz,
- doublecomplex *work, integer *lwork, doublereal *rwork, integer *
- lrwork, integer *iwork, integer *liwork, integer *info);
-
-/* Subroutine */ int zhpevx_(char *jobz, char *range, char *uplo, integer *n,
- doublecomplex *ap, doublereal *vl, doublereal *vu, integer *il,
- integer *iu, doublereal *abstol, integer *m, doublereal *w,
- doublecomplex *z__, integer *ldz, doublecomplex *work, doublereal *
- rwork, integer *iwork, integer *ifail, integer *info);
-
-/* Subroutine */ int zhpgst_(integer *itype, char *uplo, integer *n,
- doublecomplex *ap, doublecomplex *bp, integer *info);
-
-/* Subroutine */ int zhpgv_(integer *itype, char *jobz, char *uplo, integer *
- n, doublecomplex *ap, doublecomplex *bp, doublereal *w, doublecomplex
- *z__, integer *ldz, doublecomplex *work, doublereal *rwork, integer *
- info);
-
-/* Subroutine */ int zhpgvd_(integer *itype, char *jobz, char *uplo, integer *
- n, doublecomplex *ap, doublecomplex *bp, doublereal *w, doublecomplex
- *z__, integer *ldz, doublecomplex *work, integer *lwork, doublereal *
- rwork, integer *lrwork, integer *iwork, integer *liwork, integer *
- info);
-
-/* Subroutine */ int zhpgvx_(integer *itype, char *jobz, char *range, char *
- uplo, integer *n, doublecomplex *ap, doublecomplex *bp, doublereal *
- vl, doublereal *vu, integer *il, integer *iu, doublereal *abstol,
- integer *m, doublereal *w, doublecomplex *z__, integer *ldz,
- doublecomplex *work, doublereal *rwork, integer *iwork, integer *
- ifail, integer *info);
-
-/* Subroutine */ int zhprfs_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *ap, doublecomplex *afp, integer *ipiv, doublecomplex *
- b, integer *ldb, doublecomplex *x, integer *ldx, doublereal *ferr,
- doublereal *berr, doublecomplex *work, doublereal *rwork, integer *
- info);
-
-/* Subroutine */ int zhpsv_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *ap, integer *ipiv, doublecomplex *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int zhpsvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, doublecomplex *ap, doublecomplex *afp, integer *ipiv,
- doublecomplex *b, integer *ldb, doublecomplex *x, integer *ldx,
- doublereal *rcond, doublereal *ferr, doublereal *berr, doublecomplex *
- work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zhptrd_(char *uplo, integer *n, doublecomplex *ap,
- doublereal *d__, doublereal *e, doublecomplex *tau, integer *info);
-
-/* Subroutine */ int zhptrf_(char *uplo, integer *n, doublecomplex *ap,
- integer *ipiv, integer *info);
-
-/* Subroutine */ int zhptri_(char *uplo, integer *n, doublecomplex *ap,
- integer *ipiv, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zhptrs_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *ap, integer *ipiv, doublecomplex *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int zhsein_(char *side, char *eigsrc, char *initv, logical *
- select, integer *n, doublecomplex *h__, integer *ldh, doublecomplex *
- w, doublecomplex *vl, integer *ldvl, doublecomplex *vr, integer *ldvr,
- integer *mm, integer *m, doublecomplex *work, doublereal *rwork,
- integer *ifaill, integer *ifailr, integer *info);
-
-/* Subroutine */ int zhseqr_(char *job, char *compz, integer *n, integer *ilo,
- integer *ihi, doublecomplex *h__, integer *ldh, doublecomplex *w,
- doublecomplex *z__, integer *ldz, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zlabrd_(integer *m, integer *n, integer *nb,
- doublecomplex *a, integer *lda, doublereal *d__, doublereal *e,
- doublecomplex *tauq, doublecomplex *taup, doublecomplex *x, integer *
- ldx, doublecomplex *y, integer *ldy);
-
-/* Subroutine */ int zlacgv_(integer *n, doublecomplex *x, integer *incx);
-
-/* Subroutine */ int zlacon_(integer *n, doublecomplex *v, doublecomplex *x,
- doublereal *est, integer *kase);
-
-/* Subroutine */ int zlacp2_(char *uplo, integer *m, integer *n, doublereal *
- a, integer *lda, doublecomplex *b, integer *ldb);
-
-/* Subroutine */ int zlacpy_(char *uplo, integer *m, integer *n,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb);
-
-/* Subroutine */ int zlacrm_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublereal *b, integer *ldb, doublecomplex *c__,
- integer *ldc, doublereal *rwork);
-
-/* Subroutine */ int zlacrt_(integer *n, doublecomplex *cx, integer *incx,
- doublecomplex *cy, integer *incy, doublecomplex *c__, doublecomplex *
- s);
-
-/* Subroutine */ int zlaed0_(integer *qsiz, integer *n, doublereal *d__,
- doublereal *e, doublecomplex *q, integer *ldq, doublecomplex *qstore,
- integer *ldqs, doublereal *rwork, integer *iwork, integer *info);
-
-/* Subroutine */ int zlaed7_(integer *n, integer *cutpnt, integer *qsiz,
- integer *tlvls, integer *curlvl, integer *curpbm, doublereal *d__,
- doublecomplex *q, integer *ldq, doublereal *rho, integer *indxq,
- doublereal *qstore, integer *qptr, integer *prmptr, integer *perm,
- integer *givptr, integer *givcol, doublereal *givnum, doublecomplex *
- work, doublereal *rwork, integer *iwork, integer *info);
-
-/* Subroutine */ int zlaed8_(integer *k, integer *n, integer *qsiz,
- doublecomplex *q, integer *ldq, doublereal *d__, doublereal *rho,
- integer *cutpnt, doublereal *z__, doublereal *dlamda, doublecomplex *
- q2, integer *ldq2, doublereal *w, integer *indxp, integer *indx,
- integer *indxq, integer *perm, integer *givptr, integer *givcol,
- doublereal *givnum, integer *info);
-
-/* Subroutine */ int zlaein_(logical *rightv, logical *noinit, integer *n,
- doublecomplex *h__, integer *ldh, doublecomplex *w, doublecomplex *v,
- doublecomplex *b, integer *ldb, doublereal *rwork, doublereal *eps3,
- doublereal *smlnum, integer *info);
-
-/* Subroutine */ int zlaesy_(doublecomplex *a, doublecomplex *b,
- doublecomplex *c__, doublecomplex *rt1, doublecomplex *rt2,
- doublecomplex *evscal, doublecomplex *cs1, doublecomplex *sn1);
-
-/* Subroutine */ int zlaev2_(doublecomplex *a, doublecomplex *b,
- doublecomplex *c__, doublereal *rt1, doublereal *rt2, doublereal *cs1,
- doublecomplex *sn1);
-
-/* Subroutine */ int zlags2_(logical *upper, doublereal *a1, doublecomplex *
- a2, doublereal *a3, doublereal *b1, doublecomplex *b2, doublereal *b3,
- doublereal *csu, doublecomplex *snu, doublereal *csv, doublecomplex *
- snv, doublereal *csq, doublecomplex *snq);
-
-/* Subroutine */ int zlagtm_(char *trans, integer *n, integer *nrhs,
- doublereal *alpha, doublecomplex *dl, doublecomplex *d__,
- doublecomplex *du, doublecomplex *x, integer *ldx, doublereal *beta,
- doublecomplex *b, integer *ldb);
-
-/* Subroutine */ int zlahef_(char *uplo, integer *n, integer *nb, integer *kb,
- doublecomplex *a, integer *lda, integer *ipiv, doublecomplex *w,
- integer *ldw, integer *info);
-
-/* Subroutine */ int zlahqr_(logical *wantt, logical *wantz, integer *n,
- integer *ilo, integer *ihi, doublecomplex *h__, integer *ldh,
- doublecomplex *w, integer *iloz, integer *ihiz, doublecomplex *z__,
- integer *ldz, integer *info);
-
-/* Subroutine */ int zlahrd_(integer *n, integer *k, integer *nb,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *t,
- integer *ldt, doublecomplex *y, integer *ldy);
-
-/* Subroutine */ int zlaic1_(integer *job, integer *j, doublecomplex *x,
- doublereal *sest, doublecomplex *w, doublecomplex *gamma, doublereal *
- sestpr, doublecomplex *s, doublecomplex *c__);
-
-/* Subroutine */ int zlals0_(integer *icompq, integer *nl, integer *nr,
- integer *sqre, integer *nrhs, doublecomplex *b, integer *ldb,
- doublecomplex *bx, integer *ldbx, integer *perm, integer *givptr,
- integer *givcol, integer *ldgcol, doublereal *givnum, integer *ldgnum,
- doublereal *poles, doublereal *difl, doublereal *difr, doublereal *
- z__, integer *k, doublereal *c__, doublereal *s, doublereal *rwork,
- integer *info);
-
-/* Subroutine */ int zlalsa_(integer *icompq, integer *smlsiz, integer *n,
- integer *nrhs, doublecomplex *b, integer *ldb, doublecomplex *bx,
- integer *ldbx, doublereal *u, integer *ldu, doublereal *vt, integer *
- k, doublereal *difl, doublereal *difr, doublereal *z__, doublereal *
- poles, integer *givptr, integer *givcol, integer *ldgcol, integer *
- perm, doublereal *givnum, doublereal *c__, doublereal *s, doublereal *
- rwork, integer *iwork, integer *info);
-
-/* Subroutine */ int zlapll_(integer *n, doublecomplex *x, integer *incx,
- doublecomplex *y, integer *incy, doublereal *ssmin);
-
-/* Subroutine */ int zlapmt_(logical *forwrd, integer *m, integer *n,
- doublecomplex *x, integer *ldx, integer *k);
-
-/* Subroutine */ int zlaqgb_(integer *m, integer *n, integer *kl, integer *ku,
- doublecomplex *ab, integer *ldab, doublereal *r__, doublereal *c__,
- doublereal *rowcnd, doublereal *colcnd, doublereal *amax, char *equed);
-
-/* Subroutine */ int zlaqge_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublereal *r__, doublereal *c__, doublereal *rowcnd,
- doublereal *colcnd, doublereal *amax, char *equed);
-
-/* Subroutine */ int zlaqhb_(char *uplo, integer *n, integer *kd,
- doublecomplex *ab, integer *ldab, doublereal *s, doublereal *scond,
- doublereal *amax, char *equed);
-
-/* Subroutine */ int zlaqhe_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, doublereal *s, doublereal *scond, doublereal *amax,
- char *equed);
-
-/* Subroutine */ int zlaqhp_(char *uplo, integer *n, doublecomplex *ap,
- doublereal *s, doublereal *scond, doublereal *amax, char *equed);
-
-/* Subroutine */ int zlaqp2_(integer *m, integer *n, integer *offset,
- doublecomplex *a, integer *lda, integer *jpvt, doublecomplex *tau,
- doublereal *vn1, doublereal *vn2, doublecomplex *work);
-
-/* Subroutine */ int zlaqps_(integer *m, integer *n, integer *offset, integer
- *nb, integer *kb, doublecomplex *a, integer *lda, integer *jpvt,
- doublecomplex *tau, doublereal *vn1, doublereal *vn2, doublecomplex *
- auxv, doublecomplex *f, integer *ldf);
-
-/* Subroutine */ int zlaqsb_(char *uplo, integer *n, integer *kd,
- doublecomplex *ab, integer *ldab, doublereal *s, doublereal *scond,
- doublereal *amax, char *equed);
-
-/* Subroutine */ int zlaqsp_(char *uplo, integer *n, doublecomplex *ap,
- doublereal *s, doublereal *scond, doublereal *amax, char *equed);
-
-/* Subroutine */ int zlaqsy_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, doublereal *s, doublereal *scond, doublereal *amax,
- char *equed);
-
-/* Subroutine */ int zlar1v_(integer *n, integer *b1, integer *bn, doublereal
- *sigma, doublereal *d__, doublereal *l, doublereal *ld, doublereal *
- lld, doublereal *gersch, doublecomplex *z__, doublereal *ztz,
- doublereal *mingma, integer *r__, integer *isuppz, doublereal *work);
-
-/* Subroutine */ int zlar2v_(integer *n, doublecomplex *x, doublecomplex *y,
- doublecomplex *z__, integer *incx, doublereal *c__, doublecomplex *s,
- integer *incc);
-
-/* Subroutine */ int zlarcm_(integer *m, integer *n, doublereal *a, integer *
- lda, doublecomplex *b, integer *ldb, doublecomplex *c__, integer *ldc,
- doublereal *rwork);
-
-/* Subroutine */ int zlarf_(char *side, integer *m, integer *n, doublecomplex
- *v, integer *incv, doublecomplex *tau, doublecomplex *c__, integer *
- ldc, doublecomplex *work);
-
-/* Subroutine */ int zlarfb_(char *side, char *trans, char *direct, char *
- storev, integer *m, integer *n, integer *k, doublecomplex *v, integer
- *ldv, doublecomplex *t, integer *ldt, doublecomplex *c__, integer *
- ldc, doublecomplex *work, integer *ldwork);
-
-/* Subroutine */ int zlarfg_(integer *n, doublecomplex *alpha, doublecomplex *
- x, integer *incx, doublecomplex *tau);
-
-/* Subroutine */ int zlarft_(char *direct, char *storev, integer *n, integer *
- k, doublecomplex *v, integer *ldv, doublecomplex *tau, doublecomplex *
- t, integer *ldt);
-
-/* Subroutine */ int zlarfx_(char *side, integer *m, integer *n,
- doublecomplex *v, doublecomplex *tau, doublecomplex *c__, integer *
- ldc, doublecomplex *work);
-
-/* Subroutine */ int zlargv_(integer *n, doublecomplex *x, integer *incx,
- doublecomplex *y, integer *incy, doublereal *c__, integer *incc);
-
-/* Subroutine */ int zlarnv_(integer *idist, integer *iseed, integer *n,
- doublecomplex *x);
-
-/* Subroutine */ int zlarrv_(integer *n, doublereal *d__, doublereal *l,
- integer *isplit, integer *m, doublereal *w, integer *iblock,
- doublereal *gersch, doublereal *tol, doublecomplex *z__, integer *ldz,
- integer *isuppz, doublereal *work, integer *iwork, integer *info);
-
-/* Subroutine */ int zlartg_(doublecomplex *f, doublecomplex *g, doublereal *
- cs, doublecomplex *sn, doublecomplex *r__);
-
-/* Subroutine */ int zlartv_(integer *n, doublecomplex *x, integer *incx,
- doublecomplex *y, integer *incy, doublereal *c__, doublecomplex *s,
- integer *incc);
-
-/* Subroutine */ int zlarz_(char *side, integer *m, integer *n, integer *l,
- doublecomplex *v, integer *incv, doublecomplex *tau, doublecomplex *
- c__, integer *ldc, doublecomplex *work);
-
-/* Subroutine */ int zlarzb_(char *side, char *trans, char *direct, char *
- storev, integer *m, integer *n, integer *k, integer *l, doublecomplex
- *v, integer *ldv, doublecomplex *t, integer *ldt, doublecomplex *c__,
- integer *ldc, doublecomplex *work, integer *ldwork);
-
-/* Subroutine */ int zlarzt_(char *direct, char *storev, integer *n, integer *
- k, doublecomplex *v, integer *ldv, doublecomplex *tau, doublecomplex *
- t, integer *ldt);
-
-/* Subroutine */ int zlascl_(char *type__, integer *kl, integer *ku,
- doublereal *cfrom, doublereal *cto, integer *m, integer *n,
- doublecomplex *a, integer *lda, integer *info);
-
-/* Subroutine */ int zlaset_(char *uplo, integer *m, integer *n,
- doublecomplex *alpha, doublecomplex *beta, doublecomplex *a, integer *
- lda);
-
-/* Subroutine */ int zlasr_(char *side, char *pivot, char *direct, integer *m,
- integer *n, doublereal *c__, doublereal *s, doublecomplex *a,
- integer *lda);
-
-/* Subroutine */ int zlassq_(integer *n, doublecomplex *x, integer *incx,
- doublereal *scale, doublereal *sumsq);
-
-/* Subroutine */ int zlaswp_(integer *n, doublecomplex *a, integer *lda,
- integer *k1, integer *k2, integer *ipiv, integer *incx);
-
-/* Subroutine */ int zlasyf_(char *uplo, integer *n, integer *nb, integer *kb,
- doublecomplex *a, integer *lda, integer *ipiv, doublecomplex *w,
- integer *ldw, integer *info);
-
-/* Subroutine */ int zlatbs_(char *uplo, char *trans, char *diag, char *
- normin, integer *n, integer *kd, doublecomplex *ab, integer *ldab,
- doublecomplex *x, doublereal *scale, doublereal *cnorm, integer *info);
-
-/* Subroutine */ int zlatdf_(integer *ijob, integer *n, doublecomplex *z__,
- integer *ldz, doublecomplex *rhs, doublereal *rdsum, doublereal *
- rdscal, integer *ipiv, integer *jpiv);
-
-/* Subroutine */ int zlatps_(char *uplo, char *trans, char *diag, char *
- normin, integer *n, doublecomplex *ap, doublecomplex *x, doublereal *
- scale, doublereal *cnorm, integer *info);
-
-/* Subroutine */ int zlatrd_(char *uplo, integer *n, integer *nb,
- doublecomplex *a, integer *lda, doublereal *e, doublecomplex *tau,
- doublecomplex *w, integer *ldw);
-
-/* Subroutine */ int zlatrs_(char *uplo, char *trans, char *diag, char *
- normin, integer *n, doublecomplex *a, integer *lda, doublecomplex *x,
- doublereal *scale, doublereal *cnorm, integer *info);
-
-/* Subroutine */ int zlatrz_(integer *m, integer *n, integer *l,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *
- work);
-
-/* Subroutine */ int zlatzm_(char *side, integer *m, integer *n,
- doublecomplex *v, integer *incv, doublecomplex *tau, doublecomplex *
- c1, doublecomplex *c2, integer *ldc, doublecomplex *work);
-
-/* Subroutine */ int zlauu2_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, integer *info);
-
-/* Subroutine */ int zlauum_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, integer *info);
-
-/* Subroutine */ int zpbcon_(char *uplo, integer *n, integer *kd,
- doublecomplex *ab, integer *ldab, doublereal *anorm, doublereal *
- rcond, doublecomplex *work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zpbequ_(char *uplo, integer *n, integer *kd,
- doublecomplex *ab, integer *ldab, doublereal *s, doublereal *scond,
- doublereal *amax, integer *info);
-
-/* Subroutine */ int zpbrfs_(char *uplo, integer *n, integer *kd, integer *
- nrhs, doublecomplex *ab, integer *ldab, doublecomplex *afb, integer *
- ldafb, doublecomplex *b, integer *ldb, doublecomplex *x, integer *ldx,
- doublereal *ferr, doublereal *berr, doublecomplex *work, doublereal *
- rwork, integer *info);
-
-/* Subroutine */ int zpbstf_(char *uplo, integer *n, integer *kd,
- doublecomplex *ab, integer *ldab, integer *info);
-
-/* Subroutine */ int zpbsv_(char *uplo, integer *n, integer *kd, integer *
- nrhs, doublecomplex *ab, integer *ldab, doublecomplex *b, integer *
- ldb, integer *info);
-
-/* Subroutine */ int zpbsvx_(char *fact, char *uplo, integer *n, integer *kd,
- integer *nrhs, doublecomplex *ab, integer *ldab, doublecomplex *afb,
- integer *ldafb, char *equed, doublereal *s, doublecomplex *b, integer
- *ldb, doublecomplex *x, integer *ldx, doublereal *rcond, doublereal *
- ferr, doublereal *berr, doublecomplex *work, doublereal *rwork,
- integer *info);
-
-/* Subroutine */ int zpbtf2_(char *uplo, integer *n, integer *kd,
- doublecomplex *ab, integer *ldab, integer *info);
-
-/* Subroutine */ int zpbtrf_(char *uplo, integer *n, integer *kd,
- doublecomplex *ab, integer *ldab, integer *info);
-
-/* Subroutine */ int zpbtrs_(char *uplo, integer *n, integer *kd, integer *
- nrhs, doublecomplex *ab, integer *ldab, doublecomplex *b, integer *
- ldb, integer *info);
-
-/* Subroutine */ int zpocon_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, doublereal *anorm, doublereal *rcond, doublecomplex *
- work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zpoequ_(integer *n, doublecomplex *a, integer *lda,
- doublereal *s, doublereal *scond, doublereal *amax, integer *info);
-
-/* Subroutine */ int zporfs_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *a, integer *lda, doublecomplex *af, integer *ldaf,
- doublecomplex *b, integer *ldb, doublecomplex *x, integer *ldx,
- doublereal *ferr, doublereal *berr, doublecomplex *work, doublereal *
- rwork, integer *info);
-
-/* Subroutine */ int zposv_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int zposvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, doublecomplex *a, integer *lda, doublecomplex *af, integer *
- ldaf, char *equed, doublereal *s, doublecomplex *b, integer *ldb,
- doublecomplex *x, integer *ldx, doublereal *rcond, doublereal *ferr,
- doublereal *berr, doublecomplex *work, doublereal *rwork, integer *
- info);
-
-/* Subroutine */ int zpotf2_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, integer *info);
-
-/* Subroutine */ int zpotrf_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, integer *info);
-
-/* Subroutine */ int zpotri_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, integer *info);
-
-/* Subroutine */ int zpotrs_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int zppcon_(char *uplo, integer *n, doublecomplex *ap,
- doublereal *anorm, doublereal *rcond, doublecomplex *work, doublereal
- *rwork, integer *info);
-
-/* Subroutine */ int zppequ_(char *uplo, integer *n, doublecomplex *ap,
- doublereal *s, doublereal *scond, doublereal *amax, integer *info);
-
-/* Subroutine */ int zpprfs_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *ap, doublecomplex *afp, doublecomplex *b, integer *ldb,
- doublecomplex *x, integer *ldx, doublereal *ferr, doublereal *berr,
- doublecomplex *work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zppsv_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *ap, doublecomplex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int zppsvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, doublecomplex *ap, doublecomplex *afp, char *equed, doublereal *
- s, doublecomplex *b, integer *ldb, doublecomplex *x, integer *ldx,
- doublereal *rcond, doublereal *ferr, doublereal *berr, doublecomplex *
- work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zpptrf_(char *uplo, integer *n, doublecomplex *ap,
- integer *info);
-
-/* Subroutine */ int zpptri_(char *uplo, integer *n, doublecomplex *ap,
- integer *info);
-
-/* Subroutine */ int zpptrs_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *ap, doublecomplex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int zptcon_(integer *n, doublereal *d__, doublecomplex *e,
- doublereal *anorm, doublereal *rcond, doublereal *rwork, integer *
- info);
-
-/* Subroutine */ int zptrfs_(char *uplo, integer *n, integer *nrhs,
- doublereal *d__, doublecomplex *e, doublereal *df, doublecomplex *ef,
- doublecomplex *b, integer *ldb, doublecomplex *x, integer *ldx,
- doublereal *ferr, doublereal *berr, doublecomplex *work, doublereal *
- rwork, integer *info);
-
-/* Subroutine */ int zptsv_(integer *n, integer *nrhs, doublereal *d__,
- doublecomplex *e, doublecomplex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int zptsvx_(char *fact, integer *n, integer *nrhs,
- doublereal *d__, doublecomplex *e, doublereal *df, doublecomplex *ef,
- doublecomplex *b, integer *ldb, doublecomplex *x, integer *ldx,
- doublereal *rcond, doublereal *ferr, doublereal *berr, doublecomplex *
- work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zpttrf_(integer *n, doublereal *d__, doublecomplex *e,
- integer *info);
-
-/* Subroutine */ int zpttrs_(char *uplo, integer *n, integer *nrhs,
- doublereal *d__, doublecomplex *e, doublecomplex *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int zptts2_(integer *iuplo, integer *n, integer *nrhs,
- doublereal *d__, doublecomplex *e, doublecomplex *b, integer *ldb);
-
-/* Subroutine */ int zrot_(integer *n, doublecomplex *cx, integer *incx,
- doublecomplex *cy, integer *incy, doublereal *c__, doublecomplex *s);
-
-/* Subroutine */ int zspcon_(char *uplo, integer *n, doublecomplex *ap,
- integer *ipiv, doublereal *anorm, doublereal *rcond, doublecomplex *
- work, integer *info);
-
-/* Subroutine */ int zspmv_(char *uplo, integer *n, doublecomplex *alpha,
- doublecomplex *ap, doublecomplex *x, integer *incx, doublecomplex *
- beta, doublecomplex *y, integer *incy);
-
-/* Subroutine */ int zspr_(char *uplo, integer *n, doublecomplex *alpha,
- doublecomplex *x, integer *incx, doublecomplex *ap);
-
-/* Subroutine */ int zsprfs_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *ap, doublecomplex *afp, integer *ipiv, doublecomplex *
- b, integer *ldb, doublecomplex *x, integer *ldx, doublereal *ferr,
- doublereal *berr, doublecomplex *work, doublereal *rwork, integer *
- info);
-
-/* Subroutine */ int zspsv_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *ap, integer *ipiv, doublecomplex *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int zspsvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, doublecomplex *ap, doublecomplex *afp, integer *ipiv,
- doublecomplex *b, integer *ldb, doublecomplex *x, integer *ldx,
- doublereal *rcond, doublereal *ferr, doublereal *berr, doublecomplex *
- work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zsptrf_(char *uplo, integer *n, doublecomplex *ap,
- integer *ipiv, integer *info);
-
-/* Subroutine */ int zsptri_(char *uplo, integer *n, doublecomplex *ap,
- integer *ipiv, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zsptrs_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *ap, integer *ipiv, doublecomplex *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int zstedc_(char *compz, integer *n, doublereal *d__,
- doublereal *e, doublecomplex *z__, integer *ldz, doublecomplex *work,
- integer *lwork, doublereal *rwork, integer *lrwork, integer *iwork,
- integer *liwork, integer *info);
-
-/* Subroutine */ int zstein_(integer *n, doublereal *d__, doublereal *e,
- integer *m, doublereal *w, integer *iblock, integer *isplit,
- doublecomplex *z__, integer *ldz, doublereal *work, integer *iwork,
- integer *ifail, integer *info);
-
-/* Subroutine */ int zsteqr_(char *compz, integer *n, doublereal *d__,
- doublereal *e, doublecomplex *z__, integer *ldz, doublereal *work,
- integer *info);
-
-/* Subroutine */ int zsycon_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, integer *ipiv, doublereal *anorm, doublereal *rcond,
- doublecomplex *work, integer *info);
-
-/* Subroutine */ int zsymv_(char *uplo, integer *n, doublecomplex *alpha,
- doublecomplex *a, integer *lda, doublecomplex *x, integer *incx,
- doublecomplex *beta, doublecomplex *y, integer *incy);
-
-/* Subroutine */ int zsyr_(char *uplo, integer *n, doublecomplex *alpha,
- doublecomplex *x, integer *incx, doublecomplex *a, integer *lda);
-
-/* Subroutine */ int zsyrfs_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *a, integer *lda, doublecomplex *af, integer *ldaf,
- integer *ipiv, doublecomplex *b, integer *ldb, doublecomplex *x,
- integer *ldx, doublereal *ferr, doublereal *berr, doublecomplex *work,
- doublereal *rwork, integer *info);
-
-/* Subroutine */ int zsysv_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *a, integer *lda, integer *ipiv, doublecomplex *b,
- integer *ldb, doublecomplex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int zsysvx_(char *fact, char *uplo, integer *n, integer *
- nrhs, doublecomplex *a, integer *lda, doublecomplex *af, integer *
- ldaf, integer *ipiv, doublecomplex *b, integer *ldb, doublecomplex *x,
- integer *ldx, doublereal *rcond, doublereal *ferr, doublereal *berr,
- doublecomplex *work, integer *lwork, doublereal *rwork, integer *info);
-
-/* Subroutine */ int zsytf2_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, integer *ipiv, integer *info);
-
-/* Subroutine */ int zsytrf_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, integer *ipiv, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zsytri_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, integer *ipiv, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zsytrs_(char *uplo, integer *n, integer *nrhs,
- doublecomplex *a, integer *lda, integer *ipiv, doublecomplex *b,
- integer *ldb, integer *info);
-
-/* Subroutine */ int ztbcon_(char *norm, char *uplo, char *diag, integer *n,
- integer *kd, doublecomplex *ab, integer *ldab, doublereal *rcond,
- doublecomplex *work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int ztbrfs_(char *uplo, char *trans, char *diag, integer *n,
- integer *kd, integer *nrhs, doublecomplex *ab, integer *ldab,
- doublecomplex *b, integer *ldb, doublecomplex *x, integer *ldx,
- doublereal *ferr, doublereal *berr, doublecomplex *work, doublereal *
- rwork, integer *info);
-
-/* Subroutine */ int ztbtrs_(char *uplo, char *trans, char *diag, integer *n,
- integer *kd, integer *nrhs, doublecomplex *ab, integer *ldab,
- doublecomplex *b, integer *ldb, integer *info);
-
-/* Subroutine */ int ztgevc_(char *side, char *howmny, logical *select,
- integer *n, doublecomplex *a, integer *lda, doublecomplex *b, integer
- *ldb, doublecomplex *vl, integer *ldvl, doublecomplex *vr, integer *
- ldvr, integer *mm, integer *m, doublecomplex *work, doublereal *rwork,
- integer *info);
-
-/* Subroutine */ int ztgex2_(logical *wantq, logical *wantz, integer *n,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- doublecomplex *q, integer *ldq, doublecomplex *z__, integer *ldz,
- integer *j1, integer *info);
-
-/* Subroutine */ int ztgexc_(logical *wantq, logical *wantz, integer *n,
- doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- doublecomplex *q, integer *ldq, doublecomplex *z__, integer *ldz,
- integer *ifst, integer *ilst, integer *info);
-
-/* Subroutine */ int ztgsen_(integer *ijob, logical *wantq, logical *wantz,
- logical *select, integer *n, doublecomplex *a, integer *lda,
- doublecomplex *b, integer *ldb, doublecomplex *alpha, doublecomplex *
- beta, doublecomplex *q, integer *ldq, doublecomplex *z__, integer *
- ldz, integer *m, doublereal *pl, doublereal *pr, doublereal *dif,
- doublecomplex *work, integer *lwork, integer *iwork, integer *liwork,
- integer *info);
-
-/* Subroutine */ int ztgsja_(char *jobu, char *jobv, char *jobq, integer *m,
- integer *p, integer *n, integer *k, integer *l, doublecomplex *a,
- integer *lda, doublecomplex *b, integer *ldb, doublereal *tola,
- doublereal *tolb, doublereal *alpha, doublereal *beta, doublecomplex *
- u, integer *ldu, doublecomplex *v, integer *ldv, doublecomplex *q,
- integer *ldq, doublecomplex *work, integer *ncycle, integer *info);
-
-/* Subroutine */ int ztgsna_(char *job, char *howmny, logical *select,
- integer *n, doublecomplex *a, integer *lda, doublecomplex *b, integer
- *ldb, doublecomplex *vl, integer *ldvl, doublecomplex *vr, integer *
- ldvr, doublereal *s, doublereal *dif, integer *mm, integer *m,
- doublecomplex *work, integer *lwork, integer *iwork, integer *info);
-
-/* Subroutine */ int ztgsy2_(char *trans, integer *ijob, integer *m, integer *
- n, doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- doublecomplex *c__, integer *ldc, doublecomplex *d__, integer *ldd,
- doublecomplex *e, integer *lde, doublecomplex *f, integer *ldf,
- doublereal *scale, doublereal *rdsum, doublereal *rdscal, integer *
- info);
-
-/* Subroutine */ int ztgsyl_(char *trans, integer *ijob, integer *m, integer *
- n, doublecomplex *a, integer *lda, doublecomplex *b, integer *ldb,
- doublecomplex *c__, integer *ldc, doublecomplex *d__, integer *ldd,
- doublecomplex *e, integer *lde, doublecomplex *f, integer *ldf,
- doublereal *scale, doublereal *dif, doublecomplex *work, integer *
- lwork, integer *iwork, integer *info);
-
-/* Subroutine */ int ztpcon_(char *norm, char *uplo, char *diag, integer *n,
- doublecomplex *ap, doublereal *rcond, doublecomplex *work, doublereal
- *rwork, integer *info);
-
-/* Subroutine */ int ztprfs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, doublecomplex *ap, doublecomplex *b, integer *ldb,
- doublecomplex *x, integer *ldx, doublereal *ferr, doublereal *berr,
- doublecomplex *work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int ztptri_(char *uplo, char *diag, integer *n,
- doublecomplex *ap, integer *info);
-
-/* Subroutine */ int ztptrs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, doublecomplex *ap, doublecomplex *b, integer *ldb,
- integer *info);
-
-/* Subroutine */ int ztrcon_(char *norm, char *uplo, char *diag, integer *n,
- doublecomplex *a, integer *lda, doublereal *rcond, doublecomplex *
- work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int ztrevc_(char *side, char *howmny, logical *select,
- integer *n, doublecomplex *t, integer *ldt, doublecomplex *vl,
- integer *ldvl, doublecomplex *vr, integer *ldvr, integer *mm, integer
- *m, doublecomplex *work, doublereal *rwork, integer *info);
-
-/* Subroutine */ int ztrexc_(char *compq, integer *n, doublecomplex *t,
- integer *ldt, doublecomplex *q, integer *ldq, integer *ifst, integer *
- ilst, integer *info);
-
-/* Subroutine */ int ztrrfs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, doublecomplex *a, integer *lda, doublecomplex *b,
- integer *ldb, doublecomplex *x, integer *ldx, doublereal *ferr,
- doublereal *berr, doublecomplex *work, doublereal *rwork, integer *
- info);
-
-/* Subroutine */ int ztrsen_(char *job, char *compq, logical *select, integer
- *n, doublecomplex *t, integer *ldt, doublecomplex *q, integer *ldq,
- doublecomplex *w, integer *m, doublereal *s, doublereal *sep,
- doublecomplex *work, integer *lwork, integer *info);
-
-/* Subroutine */ int ztrsna_(char *job, char *howmny, logical *select,
- integer *n, doublecomplex *t, integer *ldt, doublecomplex *vl,
- integer *ldvl, doublecomplex *vr, integer *ldvr, doublereal *s,
- doublereal *sep, integer *mm, integer *m, doublecomplex *work,
- integer *ldwork, doublereal *rwork, integer *info);
-
-/* Subroutine */ int ztrsyl_(char *trana, char *tranb, integer *isgn, integer
- *m, integer *n, doublecomplex *a, integer *lda, doublecomplex *b,
- integer *ldb, doublecomplex *c__, integer *ldc, doublereal *scale,
- integer *info);
-
-/* Subroutine */ int ztrti2_(char *uplo, char *diag, integer *n,
- doublecomplex *a, integer *lda, integer *info);
-
-/* Subroutine */ int ztrtri_(char *uplo, char *diag, integer *n,
- doublecomplex *a, integer *lda, integer *info);
-
-/* Subroutine */ int ztrtrs_(char *uplo, char *trans, char *diag, integer *n,
- integer *nrhs, doublecomplex *a, integer *lda, doublecomplex *b,
- integer *ldb, integer *info);
-
-/* Subroutine */ int ztzrqf_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublecomplex *tau, integer *info);
-
-/* Subroutine */ int ztzrzf_(integer *m, integer *n, doublecomplex *a,
- integer *lda, doublecomplex *tau, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zung2l_(integer *m, integer *n, integer *k,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *
- work, integer *info);
-
-/* Subroutine */ int zung2r_(integer *m, integer *n, integer *k,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *
- work, integer *info);
-
-/* Subroutine */ int zungbr_(char *vect, integer *m, integer *n, integer *k,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *
- work, integer *lwork, integer *info);
-
-/* Subroutine */ int zunghr_(integer *n, integer *ilo, integer *ihi,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *
- work, integer *lwork, integer *info);
-
-/* Subroutine */ int zungl2_(integer *m, integer *n, integer *k,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *
- work, integer *info);
-
-/* Subroutine */ int zunglq_(integer *m, integer *n, integer *k,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *
- work, integer *lwork, integer *info);
-
-/* Subroutine */ int zungql_(integer *m, integer *n, integer *k,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *
- work, integer *lwork, integer *info);
-
-/* Subroutine */ int zungqr_(integer *m, integer *n, integer *k,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *
- work, integer *lwork, integer *info);
-
-/* Subroutine */ int zungr2_(integer *m, integer *n, integer *k,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *
- work, integer *info);
-
-/* Subroutine */ int zungrq_(integer *m, integer *n, integer *k,
- doublecomplex *a, integer *lda, doublecomplex *tau, doublecomplex *
- work, integer *lwork, integer *info);
-
-/* Subroutine */ int zungtr_(char *uplo, integer *n, doublecomplex *a,
- integer *lda, doublecomplex *tau, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zunm2l_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublecomplex *a, integer *lda, doublecomplex *tau,
- doublecomplex *c__, integer *ldc, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zunm2r_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublecomplex *a, integer *lda, doublecomplex *tau,
- doublecomplex *c__, integer *ldc, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zunmbr_(char *vect, char *side, char *trans, integer *m,
- integer *n, integer *k, doublecomplex *a, integer *lda, doublecomplex
- *tau, doublecomplex *c__, integer *ldc, doublecomplex *work, integer *
- lwork, integer *info);
-
-/* Subroutine */ int zunmhr_(char *side, char *trans, integer *m, integer *n,
- integer *ilo, integer *ihi, doublecomplex *a, integer *lda,
- doublecomplex *tau, doublecomplex *c__, integer *ldc, doublecomplex *
- work, integer *lwork, integer *info);
-
-/* Subroutine */ int zunml2_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublecomplex *a, integer *lda, doublecomplex *tau,
- doublecomplex *c__, integer *ldc, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zunmlq_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublecomplex *a, integer *lda, doublecomplex *tau,
- doublecomplex *c__, integer *ldc, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zunmql_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublecomplex *a, integer *lda, doublecomplex *tau,
- doublecomplex *c__, integer *ldc, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zunmqr_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublecomplex *a, integer *lda, doublecomplex *tau,
- doublecomplex *c__, integer *ldc, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zunmr2_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublecomplex *a, integer *lda, doublecomplex *tau,
- doublecomplex *c__, integer *ldc, doublecomplex *work, integer *info);
-
-/* Subroutine */ int zunmr3_(char *side, char *trans, integer *m, integer *n,
- integer *k, integer *l, doublecomplex *a, integer *lda, doublecomplex
- *tau, doublecomplex *c__, integer *ldc, doublecomplex *work, integer *
- info);
-
-/* Subroutine */ int zunmrq_(char *side, char *trans, integer *m, integer *n,
- integer *k, doublecomplex *a, integer *lda, doublecomplex *tau,
- doublecomplex *c__, integer *ldc, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zunmrz_(char *side, char *trans, integer *m, integer *n,
- integer *k, integer *l, doublecomplex *a, integer *lda, doublecomplex
- *tau, doublecomplex *c__, integer *ldc, doublecomplex *work, integer *
- lwork, integer *info);
-
-/* Subroutine */ int zunmtr_(char *side, char *uplo, char *trans, integer *m,
- integer *n, doublecomplex *a, integer *lda, doublecomplex *tau,
- doublecomplex *c__, integer *ldc, doublecomplex *work, integer *lwork,
- integer *info);
-
-/* Subroutine */ int zupgtr_(char *uplo, integer *n, doublecomplex *ap,
- doublecomplex *tau, doublecomplex *q, integer *ldq, doublecomplex *
- work, integer *info);
-
-/* Subroutine */ int zupmtr_(char *side, char *uplo, char *trans, integer *m,
- integer *n, doublecomplex *ap, doublecomplex *tau, doublecomplex *c__,
- integer *ldc, doublecomplex *work, integer *info);
-}
diff --git a/math/atlas/files/patch-ATL_cmmJIK.c b/math/atlas/files/patch-ATL_cmmJIK.c
deleted file mode 100644
index 14dca5155a15..000000000000
--- a/math/atlas/files/patch-ATL_cmmJIK.c
+++ /dev/null
@@ -1,14 +0,0 @@
-http://math-atlas.sourceforge.net/errata.html
-Error in complex gemm for A*A^T.
-
---- src/blas/gemm/ATL_cmmJIK.c Mon Dec 22 09:08:00 2003
-+++ src/blas/gemm/ATL_cmmJIK.c Wed Mar 7 00:26:46 2007
-@@ -190,7 +190,7 @@
- pA = ATL_AlignPtr(vB);
- if (TA == AtlasNoTrans)
- Mjoin(PATL,row2blkT2_a1)(M, K, A, lda, pA, alpha);
-- else Mjoin(PATL,col2blk_a1)(K, M, A, lda, pA, alpha);
-+ else Mjoin(PATL,col2blk2_a1)(K, M, A, lda, pA, alpha);
- /*
- * Can't write directly to C if alpha is not one
- */
diff --git a/math/atlas/files/patch-ATL_dmm4x4x8_US.c b/math/atlas/files/patch-ATL_dmm4x4x8_US.c
deleted file mode 100644
index 653cd331a34b..000000000000
--- a/math/atlas/files/patch-ATL_dmm4x4x8_US.c
+++ /dev/null
@@ -1,14 +0,0 @@
-http://math-atlas.sourceforge.net/errata.html
-Error in UltraSPARC cleanup
-
---- tune/blas/gemm/CASES/ATL_dmm4x4x8_US.c Mon Dec 22 09:12:04 2003
-+++ tune/blas/gemm/CASES/ATL_dmm4x4x8_US.c Wed Mar 7 02:57:37 2007
-@@ -272,7 +272,7 @@
- !
- ! For K == 1, we never enter the loop at all
- !
--#if (KB != 2)
-+#if (KB != 8)
- #if KB == 0
- subcc Kstart, %g0, %g0
- bz KDRAIN
diff --git a/math/atlas/files/patch-CONFIG+src+SpewMakeInc.c b/math/atlas/files/patch-CONFIG+src+SpewMakeInc.c
new file mode 100644
index 000000000000..975591f13f3b
--- /dev/null
+++ b/math/atlas/files/patch-CONFIG+src+SpewMakeInc.c
@@ -0,0 +1,21 @@
+--- CONFIG/src/SpewMakeInc.c.orig 2007-10-11 05:40:21.000000000 +0900
++++ CONFIG/src/SpewMakeInc.c 2007-10-29 11:03:11.000000000 +0900
+@@ -693,14 +693,14 @@
+ fprintf(fpout, "# ------------------------------------\n");
+ fprintf(fpout, "# Reference and system libraries\n");
+ fprintf(fpout, "# ------------------------------------\n");
+- fprintf(fpout, " BLASlib = \n");
+- fprintf(fpout, " FBLASlib = \n");
+- fprintf(fpout, " FLAPACKlib = ");
++ fprintf(fpout, " BLASlib = -L%%LOCALBASE%%/lib -lblas\n");
++ fprintf(fpout, " FBLASlib = -L%%LOCALBASE%%/lib -lblas\n");
++ fprintf(fpout, " FLAPACKlib = -L%%LOCALBASE%%/lib -llapack");
+ if (flapack) fprintf(fpout, "%s", flapack);
+ fprintf(fpout, "\n");
+ fprintf(fpout, " SLAPACKlib = \n");
+ if (THREADS)
+- fprintf(fpout, " LIBS = -lpthread");
++ fprintf(fpout, " LIBS = %%PTHREAD_LIBS%%");
+ else
+ fprintf(fpout, " LIBS =");
+ if (!OSIsWin(OS))
diff --git a/math/atlas/files/patch-CONFIG+src+atlcomp.txt b/math/atlas/files/patch-CONFIG+src+atlcomp.txt
new file mode 100644
index 000000000000..f8c635170767
--- /dev/null
+++ b/math/atlas/files/patch-CONFIG+src+atlcomp.txt
@@ -0,0 +1,119 @@
+--- CONFIG/src/atlcomp.txt.orig 2007-10-11 05:40:21.000000000 +0900
++++ CONFIG/src/atlcomp.txt 2007-10-29 11:11:54.000000000 +0900
+@@ -40,57 +40,57 @@
+ #
+ # Core2Solo and Core2Duo
+ MACH=Core2Solo,Core2Duo OS=ALL LVL=1000 COMPS=smc,dmc,skc,dkc,icc
+- 'gcc' '-fomit-frame-pointer -mfpmath=sse -msse3 -O2'
++ '%%CC%%' '-fomit-frame-pointer -mfpmath=sse -msse3 -O2'
+ # PPRO,PII,PIII,P4,P4E,K7,HAMMER
+ MACH=PPRO,PII,PIII,P4,P4E,K7,HAMMER OS=ALL LVL=1000 COMPS=f77
+- 'gfortran' '-fomit-frame-pointer -mfpmath=387 -O2 -falign-loops=4'
++ '%%FC%%' '-fomit-frame-pointer -mfpmath=387 -O2 -falign-loops=4'
+ MACH=PPRO,PII,PIII,P4,P4E,K7,HAMMER OS=ALL LVL=1000 COMPS=smc,dmc,skc,dkc,icc
+- 'gcc' '-fomit-frame-pointer -mfpmath=387 -O2 -falign-loops=4'
++ '%%CC%%' '-fomit-frame-pointer -mfpmath=387 -O2 -falign-loops=4'
+ # CoreSolo,CoreDuo
+ MACH=CoreSolo,CoreDuo OS=ALL LVL=1000 COMPS=smc,dmc,skc,dkc,icc
+- 'gcc' '-fomit-frame-pointer -O3 -mfpmath=387'
++ '%%CC%%' '-fomit-frame-pointer -O3 -mfpmath=387'
+ # UltraSPARC III & IV
+ MACH=USIII,USIV OS=ALL LVL=1000 COMPS=smc,dmc,skc,dkc
+- 'gcc' '-mcpu=ultrasparc3 -mtune=ultrasparc3 -O3 -funroll-all-loops'
++ '%%CC%%' '-mcpu=ultrasparc3 -mtune=ultrasparc3 -O3 -funroll-all-loops'
+ MACH=USIII,USIV OS=ALL LVL=1000 COMPS=icc,xcc
+- 'gcc' '-mcpu=ultrasparc3 -mtune=ultrasparc3 -O'
++ '%%CC%%' '-mcpu=ultrasparc3 -mtune=ultrasparc3 -O'
+ MACH=USIII,USIV OS=ALL LVL=1000 COMPS=f77
+- 'f77' '-dalign -native -xO5'
++ '%%FC%%' '-dalign -native -xO5'
+ MACH=USIII,USIV OS=ALL LVL=100 COMPS=f77
+- 'gfortran' '-O -mcpu=ultrasparc3 -mtune=ultrasparc3'
++ '%%FC%%' '-O -mcpu=ultrasparc3 -mtune=ultrasparc3'
+ MACH=USIII,USIV OS=ALL LVL=10 COMPS=f77
+- 'g77' '-O -mcpu=ultrasparc3 -mtune=ultrasparc3'
++ '%%FC%%' '-O -mcpu=ultrasparc3 -mtune=ultrasparc3'
+ #
+ # Itanium & Itanium 2
+ #
+ # These gcc 4 default flags will die on gcc3, allowing gcc3's flags to be used
+ MACH=IA64Itan,IA64Itan2 OS=ALL LVL=1010 COMPS=smc,dmc,skc,dkc
+- 'gcc' '-fomit-frame-pointer -O2 -fno-tree-loop-optimize'
++ '%%CC%%' '-fomit-frame-pointer -O2 -fno-tree-loop-optimize'
+ MACH=IA64Itan,IA64Itan2 OS=ALL LVL=1000 COMPS=smc,dmc,skc,dkc
+- 'gcc' '-fomit-frame-pointer -O2'
++ '%%CC%%' '-fomit-frame-pointer -O2'
+ MACH=IA64Itan,IA64Itan2 OS=ALL LVL=1010 COMPS=f77
+- 'gfortran' '-fomit-frame-pointer -O2 -fno-tree-loop-optimize'
++ '%%FC%%' '-fomit-frame-pointer -O2 -fno-tree-loop-optimize'
+ #
+ # IRIX/MIPS
+ #
+ MACH=MIPSR1xK OS=IRIX LVL=1000 COMPS=smc,dmc,skc,dkc
+- 'cc' '-O3 -OPT:Olimit=15000 -LNO:blocking=OFF -LOPT:alias=typed'
++ '%%CC%%' '-O3 -OPT:Olimit=15000 -LNO:blocking=OFF -LOPT:alias=typed'
+ MACH=MIPSR1xK OS=IRIX LVL=1000 COMPS=icc,xcc
+- 'cc' '-O2 -OPT:Olimit=15000 -LNO:blocking=OFF'
++ '%%CC%%' '-O2 -OPT:Olimit=15000 -LNO:blocking=OFF'
+ MACH=MIPSR1xK OS=IRIX LVL=1000 COMPS=f77
+- 'f77' '-O2'
++ '%%FC%%' '-O2'
+ #
+ # Linux/MIPSICE9
+ #
+ MACH=MIPSICE9 OS=ALL LVL=1000 COMPS=icc,smc,dmc,skc,dkc,xcc
+- 'gcc' '-O2 -mips64 -march=5kf -mtune=5kf -fno-schedule-insns -fschedule-insns2 -fno-peephole -fno-peephole2'
++ '%%CC%%' '-O2 -mips64 -march=5kf -mtune=5kf -fno-schedule-insns -fschedule-insns2 -fno-peephole -fno-peephole2'
+ #
+ # G4 flags
+ #
+ MACH=PPCG4 OS=ALL LVL=1000 COMPS=icc,smc,dmc,skc,dkc,xcc
+- 'gcc' '-O3 -maltivec -mabi=altivec -mcpu=7400 -mtune=7400'
++ '%%CC%%' '-O3 -maltivec -mabi=altivec -mcpu=7400 -mtune=7400'
+ MACH=PPCG4 OS=OSX LVL=1001 COMPS=icc,smc,dmc,skc,dkc,xcc
+- 'gcc' '-O3 -maltivec -mabi=altivec -mcpu=7400 -mtune=7400 -no-cpp-precomp -faltivec'
++ '%%CC%%' '-O3 -maltivec -mabi=altivec -mcpu=7400 -mtune=7400 -no-cpp-precomp -faltivec'
+
+ #
+ # OS X / PowerPC970; the
+@@ -99,19 +99,19 @@
+ # performance by removing them (for all PowerPC platforms)
+ #
+ MACH=PPCG5 OS=OSX LVL=1001 COMPS=icc,smc,dmc,skc,dkc,xcc
+- 'gcc' '-mpowerpc64 -maltivec -mabi=altivec -mcpu=970 -mtune=970 -faltivec -O3'
++ '%%CC%%' '-mpowerpc64 -maltivec -mabi=altivec -mcpu=970 -mtune=970 -faltivec -O3'
+ MACH=PPCG5 OS=OSX LVL=1010 COMPS=icc,smc,dmc,skc,dkc,xcc
+- 'gcc' '-mpowerpc64 -maltivec -mabi=altivec -mcpu=970 -mtune=970 -faltivec -force_cpusubtype_ALL -O3 -fno-schedule-insns -fno-rerun-loop-opt'
++ '%%CC%%' '-mpowerpc64 -maltivec -mabi=altivec -mcpu=970 -mtune=970 -faltivec -force_cpusubtype_ALL -O3 -fno-schedule-insns -fno-rerun-loop-opt'
+ MACH=PPCG5 OS=ALL LVL=1000 COMPS=icc,smc,dmc,skc,dkc,xcc
+- 'gcc' '-mpowerpc64 -maltivec -mabi=altivec -mcpu=970 -mtune=970 -O3'
++ '%%CC%%' '-mpowerpc64 -maltivec -mabi=altivec -mcpu=970 -mtune=970 -O3'
+ MACH=POWER5 OS=ALL LVL=1010 COMPS=icc,smc,dmc,skc,dkc,xcc
+- 'gcc' '-mcpu=power5 -mtune=power5 -O3 -fno-schedule-insns -fno-rerun-loop-opt'
++ '%%CC%%' '-mcpu=power5 -mtune=power5 -O3 -fno-schedule-insns -fno-rerun-loop-opt'
+ MACH=POWER5 OS=ALL LVL=1010 COMPS=f77
+- 'gfortran' '-mcpu=power5 -mtune=power5 -O3 -fno-schedule-insns -fno-rerun-loop-opt'
++ '%%FC%%' '-mcpu=power5 -mtune=power5 -O3 -fno-schedule-insns -fno-rerun-loop-opt'
+ MACH=POWER5 OS=ALL LVL=1010 COMPS=f77
+ 'xlf' '-qtune=pwr5 -qarch=pwr5 -O3 -qmaxmem=-1 -qfloat=hsflt'
+ MACH=POWER4 OS=ALL LVL=1010 COMPS=icc,dmc,smc,dkc,skc,xcc
+- 'gcc' '-mcpu=power4 -mtune=power4 -O3 -fno-schedule-insns -fno-rerun-loop-opt'
++ '%%CC%%' '-mcpu=power4 -mtune=power4 -O3 -fno-schedule-insns -fno-rerun-loop-opt'
+ MACH=POWER4 OS=ALL LVL=1010 COMPS=f77
+ 'xlf' '-qtune=pwr4 -qarch=pwr4 -O3 -qmaxmem=-1 -qfloat=hsflt'
+ #
+@@ -131,10 +131,10 @@
+ # Generic defaults
+ #
+ MACH=ALL OS=ALL LVL=5 COMPS=icc,smc,dmc,skc,dkc,xcc
+- 'gcc' '-O -fomit-frame-pointer'
++ '%%CC%%' '-O -fomit-frame-pointer'
+ MACH=ALL OS=ALL LVL=5 COMPS=f77
+- 'gfortran' '-O'
++ '%%FC%%' '-O'
+ MACH=ALL OS=ALL LVL=4 COMPS=f77
+- 'g77' '-O'
++ '%%FC%%' '-O'
+ MACH=ALL OS=ALL LVL=0 COMPS=f77
+- 'f77' '-O'
++ '%%FC%%' '-O'
diff --git a/math/atlas/files/patch-CONFIG+src+backend+archinfo_freebsd.c b/math/atlas/files/patch-CONFIG+src+backend+archinfo_freebsd.c
new file mode 100644
index 000000000000..a8f1e062dab5
--- /dev/null
+++ b/math/atlas/files/patch-CONFIG+src+backend+archinfo_freebsd.c
@@ -0,0 +1,75 @@
+--- CONFIG/src/backend/archinfo_freebsd.c.orig Wed Jan 31 06:30:00 2007
++++ CONFIG/src/backend/archinfo_freebsd.c Thu Feb 8 16:37:05 2007
+@@ -73,13 +73,24 @@
+ }
+ break;
+ case AFSPARC: /* don't know */
++ if (!CmndOneLine(NULL, "sysctl hw.model", res))
++ {
++ if (strstr(res, "UltraSparc-IV")) mach = SunUSIV;
++ if (strstr(res, "UltraSparc-II")) mach = SunUSII;
++ if (strstr(res, "UltraSparc-I")) mach = SunUSI;
++ if (strstr(res, "UltraSparc")) mach = SunUSI;
++ else mach = SunUSI;
++ }
+ break;
+ case AFALPHA:
+ #if 0
+ if (!CmndOneLine(NULL, "sysctl hw.model", res))
+ {
+ if (strstr(res, "433au")) mach = Dec21164;
++ else if (strstr(res, "500au")) mach = Dec21164;
++ else if (strstr(res, "AlphaPC 164")) mach = Dec21164;
+ else if (strstr(res, "XP1000")) mach = Dec21264;
++ else mach = Dec21264;
+ }
+ #endif
+ break;
+@@ -89,15 +100,33 @@
+ if (!CmndOneLine(NULL, "sysctl hw.model", res))
+ {
+ if (strstr(res, "Pentium Pro")) mach = IntPPRO;
++ else if (strstr(res, "Pentium(R) D")) mach = IntP4E;
++ else if (strstr(res, "Pentium(R) Pro")) mach = IntPPRO;
++ else if (strstr(res, "Pentium 4")) mach = IntP4;
++ else if (strstr(res, "Pentium(R) 4")) mach = IntP4;
++ else if (strstr(res, "Pentium(R) M")) mach = IntP4;
+ else if (strstr(res, "Pentium III")) mach = IntPIII;
+ else if (strstr(res, "Pentium II ")) mach = IntPII;
+ else if (strstr(res, "Athlon")) mach = AmdAthlon;
++ else if (strstr(res, "Pentium III/Pentium III")) mach = IntPIII;
++ else if (strstr(res, "Pentium(R) III")) mach = IntPIII;
++ else if (strstr(res, "Pentium II")) mach = IntPII;
++ else if (strstr(res, "Pentium II/PentiumII")) mach = IntPII;
++ else if (strstr(res, "Pentium(R) II ")) mach = IntPII;
++ else if (strstr(res, "Celeron")) mach = IntPII;
++ else if (strstr(res, "Celeron(R)")) mach = IntPII;
++ else if (strstr(res, "Opteron(tm)")) mach = AmdHammer;
++ else if (strstr(res, "AMD Athlon(tm) 64")) mach = AmdHammer;
+ else if (strstr(res, "AMD-K7")) mach = AmdAthlon;
+- else if (strstr(res, "32 bit Hammer")) mach = AmdHammer;
+- else if (strstr(res, "64 bit Hammer")) mach = AmdHammer;
+- else if (strstr(res, "Pentium/P55C")) mach = IntP5MMX; /* sent by */
+- else if (strstr(res, "Pentium")) mach=IntP5; /* Nakata Maho */
+ else if (strstr(res, "iMac4,1")) mach=IntCoreDuo;
++ else if (strstr(res, "Sempron(tm)")) mach = AmdAthlon;
++ else if (strstr(res, "AMD-K6(tm)")) mach = IntP5MMX;
++ else if (strstr(res, "Pentium/P55C")) mach = IntP5MMX;
++ else if (strstr(res, "Pentium/P54C")) mach=IntP5;
++ else if (strstr(res, "Pentium")) mach=IntP5;
++ else if (strstr(res, "VIA")) mach=IntP5MMX;
++ else if (strstr(res, "Crusoe(tm)")) mach=IntP5MMX;
++ else mach = IntP5;
+ }
+ break;
+ default:;
+@@ -156,8 +185,8 @@
+ {
+ int mhz=0;
+ char res[1024];
+- if (!CmndOneLine(NULL, "sysctl hw.cpufrequency", res) )
++ if (!CmndOneLine(NULL, "sysctl machdep.tsc_freq", res) )
+ mhz = GetFirstDouble(res) / 1000000;
+ return(mhz);
+ }
+
diff --git a/math/atlas/files/patch-CONFIG+src+backend+archinfo_x86.c b/math/atlas/files/patch-CONFIG+src+backend+archinfo_x86.c
new file mode 100644
index 000000000000..f593ba87f93e
--- /dev/null
+++ b/math/atlas/files/patch-CONFIG+src+backend+archinfo_x86.c
@@ -0,0 +1,10 @@
+--- CONFIG/src/backend/archinfo_x86.c~ Tue Dec 19 06:47:11 2006
++++ CONFIG/src/backend/archinfo_x86.c Wed Dec 27 12:05:00 2006
+@@ -281,6 +281,7 @@
+ case 9:
+ case 13:
+ iret = IntPM;
++ break;
+ case 14:
+ iret = IntCoreDuo;
+ break;
diff --git a/math/atlas/files/patch-Make.top b/math/atlas/files/patch-Make.top
deleted file mode 100644
index 6f062fff02ae..000000000000
--- a/math/atlas/files/patch-Make.top
+++ /dev/null
@@ -1,13 +0,0 @@
-http://math-atlas.sourceforge.net/errata.html
-make kill from topdir removes libraries
-
---- Make.top Mon Dec 22 09:06:32 2003
-+++ Make.top Wed Mar 7 02:15:31 2007
-@@ -211,7 +211,6 @@
- rm -rf src/blas/reference/level1/$(arch)
- rm -rf src/auxil/$(arch)
- rm -rf src/testing/$(arch)
-- rm -rf lib/$(arch)
- rm -rf bin/$(arch)
-
- killall :
diff --git a/math/atlas/files/patch-USIII.flg b/math/atlas/files/patch-USIII.flg
deleted file mode 100644
index 739480217770..000000000000
--- a/math/atlas/files/patch-USIII.flg
+++ /dev/null
@@ -1,27 +0,0 @@
-http://math-atlas.sourceforge.net/errata.html
-Error in compiler flags for gcc/USIII arch defaults
-
---- tune/blas/gemm/CASES/ccases.flg Mon Dec 22 09:12:07 2003
-+++ tune/blas/gemm/CASES/ccases.flg Wed Mar 7 03:06:39 2007
-@@ -5,7 +5,7 @@
- -mcpu=ultrasparc -mtune=ultrasparc -fomit-frame-pointer -O
- 306 192 4 4 8 0 4 4 4 8 ATL_mm4x4x8p.c "R. Clint Whaley" \
- gcc
---O -fomit-frame-pointer -fno-schedule-insns -fno-schedule-insns2
-+-mcpu=ultrasparc -mtune=ultrasparc -O -fomit-frame-pointer -fno-schedule-insns -fno-schedule-insns2
- 307 192 4 4 16 1 0 4 4 16 ATL_smm4x4x16_av.c "R. Clint Whaley"
- 308 192 4 4 4 1 0 4 4 4 ATL_smm4x4x4_av.c "R. Clint Whaley"
- 309 16 0 0 4 1 0 4 4 4 ATL_smmMNCU_av.c "R. Clint Whaley"
-
---- tune/blas/gemm/CASES/scases.flg Mon Dec 22 09:12:07 2003
-+++ tune/blas/gemm/CASES/scases.flg Wed Mar 7 03:08:48 2007
-@@ -5,7 +5,7 @@
- -mcpu=ultrasparc -mtune=ultrasparc -fomit-frame-pointer -O
- 306 192 4 4 8 0 4 4 4 8 ATL_mm4x4x8p.c "R. Clint Whaley" \
- gcc
---O -fomit-frame-pointer -fno-schedule-insns -fno-schedule-insns2
-+-mcpu=ultrasparc -mtune=ultrasparc -O -fomit-frame-pointer -fno-schedule-insns -fno-schedule-insns2
- 307 192 4 4 16 1 0 4 4 16 ATL_smm4x4x16_av.c "R. Clint Whaley"
- 308 192 4 4 4 1 0 4 4 4 ATL_smm4x4x4_av.c "R. Clint Whaley"
- 309 16 0 0 4 1 0 4 4 4 ATL_smmMNCU_av.c "R. Clint Whaley"
-
diff --git a/math/atlas/files/patch-config.c b/math/atlas/files/patch-config.c
deleted file mode 100644
index f96f241f3735..000000000000
--- a/math/atlas/files/patch-config.c
+++ /dev/null
@@ -1,197 +0,0 @@
---- config.c.orig Mon Dec 22 23:06:32 2003
-+++ config.c Sat Mar 27 14:47:04 2004
-@@ -666,7 +666,9 @@
- sprintf(ln, "%s --version", gcc);
- if (CmndOneLine(NULL, ln, ln2) == 0)
- {
-- *major = GetIntVers(ln2, &j);
-+ j=0;if(isalpha(ln2[0])){for(i=0;!isspace(ln2[i]);i++)j++;} /*skip gccXXX ; XXX is number*/
-+ for (i=j; !isdigit(ln2[i]); i++) j++;
-+ *major = GetIntVers(ln2+j, &i); j += i;
- if (*major != -1)
- {
- *minor = GetIntVers(ln2+j, &i); j += i;
-@@ -1188,7 +1190,9 @@
- switch(OS)
- {
- case OSOSX: /* don't know answer */
-- case OSFreeBSD: /* don't know answer */
-+ case OSFreeBSD:
-+ if (THREADS) strcpy(LIBS, "%%PTHREAD_LIBS%% -lm");
-+ break;
- case OSLinux:
- break;
- case OSSunOS:
-@@ -1450,9 +1454,9 @@
- if (THREADS && OS == OSFreeBSD)
- {
- if (which == CPF77)
-- strcat(flag, " -pthread");
-+ strcat(flag, " %%PTHREAD_LIBS%%");
- else
-- strcat(flag, " -pthread -D_REENTRANT -D_THREAD_SAFE");
-+ strcat(flag, " %%PTHREAD_LIBS%% %%PTHREAD_CFLAGS%%");
- }
- break;
- case OSSunOS4:
-@@ -1984,8 +1988,8 @@
- if (OS == OSFreeBSD)
- {
- if (strstr(comp, "cc"))
-- strcat(flag, " -pthread -D_REENTRANT -D_THREAD_SAFE");
-- else strcat(flag, " -pthread");
-+ strcat(flag, " %%PTHREAD_LIBS%% %%PTHREAD_CFLAGS%%");
-+ else strcat(flag, " %%PTHREAD_LIBS%%");
- }
- }
- return(*comp ? comp : NULL);
-@@ -2587,7 +2587,7 @@
- break;
- case IntP4:
- lf1 = l1 = 64;
-- lf2 = l2 = 512;
-+ lf2 = l2 = 4096;
- s1 = 0;
- s2 = 0;
- break;
-@@ -2687,6 +2687,7 @@
- l1 = l2 = s1 = s2 = 0;
- lf2 = 4096;
- }
-+ s1 = 0; // XXX always calculate L1 cache size
- if (lvl == 1)
- {
- if (AmSure) *AmSure = s1;
-@@ -2799,7 +2803,7 @@
- else if (strstr(ln, "ia64")) la = LAIA64;
- else if ( strstr(ln, "i686") || strstr(ln, "i586") ||
- strstr(ln, "i486") || strstr(ln, "i386") ||
-- strstr(ln, "x86_64") ) la = LAX86;
-+ strstr(ln, "x86_64") || strstr(ln, "amd64") ) la = LAX86;
- }
- return(la);
- }
-@@ -2835,12 +2839,22 @@
- }
- break;
- case LASPARC: /* don't know */
-+ if (!CmndOneLine(targ, "sysctl hw.model", ln))
-+ {
-+ if (strstr(ln, "UltraSparc-II")) mach = SunUS2;
-+ if (strstr(ln, "UltraSparc-I")) mach = SunUS1;
-+ if (strstr(ln, "UltraSparc")) mach = SunUSX;
-+ else mach = SunUSX;
-+ }
- break;
- case LAALPHA:
- if (!CmndOneLine(targ, "sysctl hw.model", ln))
- {
- if (strstr(ln, "433au")) mach = Dec21164;
-+ else if (strstr(ln, "500au")) mach = Dec21164;
-+ else if (strstr(ln, "AlphaPC 164")) mach = Dec21164;
- else if (strstr(ln, "XP1000")) mach = Dec21264;
-+ else mach = Dec21264;
- }
- break;
- case LAIA64: /* don't know */
-@@ -2849,14 +2863,33 @@
- if (!CmndOneLine(targ, "sysctl hw.model", ln))
- {
- if (strstr(ln, "Pentium Pro")) mach = IntPPRO;
-+ else if (strstr(ln, "Pentium(R) Pro")) mach = IntPPRO;
-+ else if (strstr(ln, "Pentium 4")) mach = IntP4;
-+ else if (strstr(ln, "Pentium(R) 4")) mach = IntP4;
-+ else if (strstr(ln, "Pentium(R) M")) mach = IntP4;
- else if (strstr(ln, "Pentium III")) mach = IntPIII;
-- else if (strstr(ln, "Pentium II ")) mach = IntPII;
-+ else if (strstr(ln, "Pentium III/Pentium III")) mach = IntPIII;
-+ else if (strstr(ln, "Pentium(R) III")) mach = IntPIII;
-+ else if (strstr(ln, "Pentium II")) mach = IntPII;
-+ else if (strstr(ln, "Pentium II/PentiumII")) mach = IntPII;
-+ else if (strstr(ln, "Pentium(R) II ")) mach = IntPII;
-+ else if (strstr(ln, "Celeron")) mach = IntPII;
-+ else if (strstr(ln, "Celeron(R)")) mach = IntPII;
-+ else if (strstr(ln, "Opteron(tm)") && sizeof(void *)==4) mach = AmdHammer32;
-+ else if (strstr(ln, "Opteron(tm)") && sizeof(void *)==8) mach = AmdHammer64;
-+ else if (strstr(ln, "AMD Athlon(tm) 64") && sizeof(void *)==4) mach = AmdHammer32;
-+ else if (strstr(ln, "AMD Athlon(tm) 64") && sizeof(void *)==8) mach = AmdHammer64;
-+ else if (strstr(ln, "Sempron(tm)")) mach = AmdAthlon;
-+ else if (strstr(ln, "Athlon(tm)")) mach = AmdAthlon;
- else if (strstr(ln, "Athlon")) mach = AmdAthlon;
- else if (strstr(ln, "AMD-K7")) mach = AmdAthlon;
-- else if (strstr(ln, "32 bit Hammer")) mach = AmdHammer32;
-- else if (strstr(ln, "64 bit Hammer")) mach = AmdHammer64;
-- else if (strstr(ln, "Pentium/P55C")) mach = IntP5MMX; /* sent by */
-- else if (strstr(ln, "Pentium")) mach=IntP5; /* Nakata Maho */
-+ else if (strstr(ln, "AMD-K6(tm)")) mach = IntP5MMX;
-+ else if (strstr(ln, "Pentium/P55C")) mach = IntP5MMX;
-+ else if (strstr(ln, "Pentium/P54C")) mach=IntP5;
-+ else if (strstr(ln, "Pentium")) mach=IntP5;
-+ else if (strstr(ln, "VIA")) mach=IntP5MMX;
-+ else if (strstr(ln, "Crusoe(tm)")) mach=IntP5MMX;
-+ else mach = IntP5;
- }
- break;
- default:;
-@@ -3641,8 +3673,8 @@
- }
- if (THREADS) /* add ncpu to ARCH */
- {
-- for (i=0; ARCH[i]; i++);
-- sprintf(ARCH+i, "_%d", ncpu);
-+// for (i=0; ARCH[i]; i++); // do not add number of cpu for ARCHNAME
-+// sprintf(ARCH+i, "_%d", ncpu); // #cpu can be different in general
- }
- do
- {
-@@ -4047,9 +4079,9 @@
- if (mach == IA64Itan || mach == IA64Itan2 )
- fprintf(fpout, " -DATL_MAXNREG=128");
- if (ASMD != ASM_None) fprintf(fpout, " -DATL_%s", ASMNAM[ASMD]);
-- if (mach == AmdHammer32 && (OS != OSWinNT && OS != OSWin9x))
-+ if (mach == AmdHammer32 && (OS != OSWinNT && OS != OSWin9x && OS != OSFreeBSD))
- fprintf(fpout, " -m32");
-- else if (mach == AmdHammer64) fprintf(fpout, " -m64");
-+ else if (mach == AmdHammer64 && (OS != OSFreeBSD)) fprintf(fpout, " -m64");
- if (mach == IA64Itan2 && strstr(CC, "icc"))
- fprintf(fpout, " -DATL_IntelIccBugs");
- fprintf(fpout, "\n\n");
-@@ -4080,7 +4112,7 @@
- if (THREADS)
- {
- fprintf(fpout, " -DATL_NCPU=%d", ncpu);
-- if (OS == OSFreeBSD) fprintf(fpout, " -D_THREAD_SAFE -D_REENTRANT");
-+ if (OS == OSFreeBSD) fprintf(fpout, " %%PTHREAD_CFLAGS%%");
- if (OS == OSAIX) fprintf(fpout, " -DIBM_PT_ERROR");
- if (OS == OSIRIX) fprintf(fpout, " -D_POSIX_C_SOURCE=199506L");
- }
---- config.c.orig Sat Jan 6 21:07:32 2007
-+++ config.c Sun Jan 7 06:06:08 2007
-@@ -4177,9 +4177,9 @@
- fprintf(fpout, "# ------------------------------------\n");
- fprintf(fpout, "# Reference and system libraries\n");
- fprintf(fpout, "# ------------------------------------\n");
-- fprintf(fpout, " BLASlib = %s\n", BLASlib);
-- fprintf(fpout, " FBLASlib = \n");
-- fprintf(fpout, " FLAPACKlib = \n");
-+ fprintf(fpout, " BLASlib = -L%%LOCALBASE%%/lib -lblas\n");
-+ fprintf(fpout, " FBLASlib = -L%%LOCALBASE%%/lib -lblas\n");
-+ fprintf(fpout, " FLAPACKlib = -L%%LOCALBASE%%/lib -llapack\n");
- fprintf(fpout, " LIBS = %s\n\n", LIBS);
-
- fprintf(fpout,
-
-http://math-atlas.sourceforge.net/errata.html
-String overrun in config for long compiler paths
-
---- config.c Mon Dec 22 09:06:32 2003
-+++ config.c Wed Mar 7 02:08:34 2007
-@@ -3411,7 +3411,7 @@
- char LIBS[256];
- char TAR[256], GZIP[256], GUNZIP[256], PMAKE[128];
-
-- char comp[64], cflg[512], ln[512], tnam[256], archdef[256], mmdef[256];
-+ char comp[512], cflg[512], ln[512], tnam[256], archdef[256], mmdef[256];
- char BC[256], BCFLAGS[256];
- int GOGO=0, L2IsKnown=0, Use3DNow=0, TuneL1=1;
- int USEDEFL1=0;
diff --git a/math/atlas/files/patch-ilaenv.f b/math/atlas/files/patch-ilaenv.f
deleted file mode 100644
index 53b834de59cf..000000000000
--- a/math/atlas/files/patch-ilaenv.f
+++ /dev/null
@@ -1,220 +0,0 @@
-http://math-atlas.sourceforge.net/errata.html
-Large blocking factors hurt LAPACK performance for small N
-
---- interfaces/lapack/F77/src/ilaenv.f Mon Dec 22 09:07:51 2003
-+++ interfaces/lapack/F77/src/ilaenv.f Mon Mar 5 12:41:41 2007
-@@ -7,7 +7,7 @@
- * June 30, 1999
- *
- * -- Modified by R. Clint Whaley for ATLAS Fortran77 LAPACK interface,
--* 1999
-+* 1999, 2006
- *
- * .. Scalar Arguments ..
- CHARACTER*( * ) NAME, OPTS
-@@ -111,6 +111,7 @@
- CHARACTER*3 C3
- CHARACTER*6 SUBNAM
- INTEGER I, IC, IZ, NB, NBMIN, NX
-+ INTEGER MN, ATLNB
- * ..
- * .. Intrinsic Functions ..
- INTRINSIC CHAR, ICHAR, INT, MIN, REAL
-@@ -207,13 +208,10 @@
- * ISPEC = 1: block size
- *
- * ATLAS sets default blocking factor to the internal blocking factor of
--* GEMM. In routines such as QR where unblocked code addresses a panel
--* (as opposed to a NBxNB block as in POTF2), this will often be too large
--* to provide the optimal performance due to the slowness of the panel
--* factorization. Asymptotically, however, you will want it at least
--* this big. Therefore, we choose this NB as default since how much smaller
--* an NB is required is very problem size and system architecture
--* dependent. Note that the recursive routines provided by ATLAS
-+* GEMM. For particular routines, we then examine input parameters to
-+* see if we should reduce it (for instance, to ensure that we don't
-+* spend too much time in the unblocked level-2 portion of the algorithm).
-+* Note that the recursive routines provided by ATLAS
- * (presently, LU & Cholesky) do not need this value.
- *
- NB = 60
-@@ -226,6 +224,179 @@
- ELSE IF (DCPLX) THEN
- CALL ATL_F77WRAP_ZGETNB(NB)
- ENDIF
-+ ATLNB = NB
-+*
-+* Find minimum dimension of problem: don't want NB bigger than that
-+*
-+ MN = N1
-+ IF (N2 .GT. 0) THEN
-+ IF (MN .GT. N2) MN = N2
-+ IF (N3 .GT. 0) THEN
-+ IF (MN .GT. N3) MN = N3
-+ IF (N4 .GT. 0) THEN
-+ IF (MN .GT. N4) MN = N4
-+ END IF
-+ END IF
-+ END IF
-+*
-+* Make sure NB is not close to size of entire dimension, unless smallest
-+* dimension is so small you might as well use unblocked code the whole way
-+*
-+ IF (MN .LE. 3) THEN
-+ NB = MN;
-+ ELSE IF (NB*5 .GT. MN) THEN
-+ IF (MN .LT. 16) THEN
-+ IF (MN .LT. 8) THEN
-+ NB = 2
-+ ELSE
-+ NB = 4
-+ END IF
-+ ELSE
-+ NB = (MN / 4)
-+ IF (NB .GT. 4) THEN
-+ NB = (NB/4)*4
-+ ENDIF
-+ END IF
-+ END IF
-+ IF( C2.EQ.'GE' ) THEN
-+ IF( C3.EQ.'TRF' ) THEN
-+ NB = NB
-+*
-+* QR requires extra flops for blocking, so restrain total NB
-+*
-+ ELSE IF( C3.EQ.'QRF' .OR. C3.EQ.'RQF' .OR. C3.EQ.'LQF' .OR.
-+ $ C3.EQ.'QLF' ) THEN
-+ IF (NB .GT. 80) THEN
-+ IF( SNAME ) THEN
-+ NB = 60
-+ ELSE
-+ NB = 40
-+ END IF
-+ END IF
-+ ELSE IF( C3.EQ.'HRD' ) THEN
-+ IF (NB .GT. 80) THEN
-+ IF( SNAME ) THEN
-+ NB = 60
-+ ELSE
-+ NB = 40
-+ END IF
-+ END IF
-+ ELSE IF( C3.EQ.'BRD' ) THEN
-+ IF (NB .GT. 80) THEN
-+ IF( SNAME ) THEN
-+ NB = 60
-+ ELSE
-+ NB = 40
-+ END IF
-+ END IF
-+ ELSE IF( C3.EQ.'TRI' ) THEN
-+ NB = NB
-+ END IF
-+ ELSE IF( C2.EQ.'PO' ) THEN
-+ IF( C3.EQ.'TRF' ) THEN
-+ NB = NB
-+ END IF
-+ ELSE IF( C2.EQ.'SY' ) THEN
-+ IF( C3.EQ.'TRF' ) THEN
-+ NB = NB
-+ ELSE IF( SNAME .AND. C3.EQ.'TRD' ) THEN
-+ IF (NB .GT. 80) THEN
-+ IF( SNAME ) THEN
-+ NB = 60
-+ ELSE
-+ NB = 40
-+ END IF
-+ END IF
-+ ELSE IF( SNAME .AND. C3.EQ.'GST' ) THEN
-+ NB = NB
-+ END IF
-+ ELSE IF( CNAME .AND. C2.EQ.'HE' ) THEN
-+ IF( C3.EQ.'TRF' ) THEN
-+ NB = NB
-+ ELSE IF( C3.EQ.'TRD' ) THEN
-+ IF (NB .GT. 80) THEN
-+ IF( SNAME ) THEN
-+ NB = 60
-+ ELSE
-+ NB = 40
-+ END IF
-+ END IF
-+ ELSE IF( C3.EQ.'GST' ) THEN
-+ NB = NB
-+ END IF
-+ ELSE IF( SNAME .AND. C2.EQ.'OR' ) THEN
-+ IF( C3( 1:1 ).EQ.'G' ) THEN
-+ IF( C4.EQ.'QR' .OR. C4.EQ.'RQ' .OR. C4.EQ.'LQ' .OR.
-+ $ C4.EQ.'QL' .OR. C4.EQ.'HR' .OR. C4.EQ.'TR' .OR.
-+ $ C4.EQ.'BR' ) THEN
-+ IF (NB .GT. 80) NB = 60
-+ END IF
-+ ELSE IF( C3( 1:1 ).EQ.'M' ) THEN
-+ IF( C4.EQ.'QR' .OR. C4.EQ.'RQ' .OR. C4.EQ.'LQ' .OR.
-+ $ C4.EQ.'QL' .OR. C4.EQ.'HR' .OR. C4.EQ.'TR' .OR.
-+ $ C4.EQ.'BR' ) THEN
-+ IF (NB .GT. 80) NB = 60
-+ END IF
-+ END IF
-+ ELSE IF( CNAME .AND. C2.EQ.'UN' ) THEN
-+ IF( C3( 1:1 ).EQ.'G' ) THEN
-+ IF( C4.EQ.'QR' .OR. C4.EQ.'RQ' .OR. C4.EQ.'LQ' .OR.
-+ $ C4.EQ.'QL' .OR. C4.EQ.'HR' .OR. C4.EQ.'TR' .OR.
-+ $ C4.EQ.'BR' ) THEN
-+ IF (NB .GT. 80) NB = 40
-+ END IF
-+ ELSE IF( C3( 1:1 ).EQ.'M' ) THEN
-+ IF( C4.EQ.'QR' .OR. C4.EQ.'RQ' .OR. C4.EQ.'LQ' .OR.
-+ $ C4.EQ.'QL' .OR. C4.EQ.'HR' .OR. C4.EQ.'TR' .OR.
-+ $ C4.EQ.'BR' ) THEN
-+ IF (NB .GT. 80) NB = 40
-+ END IF
-+ END IF
-+ ELSE IF( C2.EQ.'GB' ) THEN
-+ IF( C3.EQ.'TRF' ) THEN
-+ IF( SNAME ) THEN
-+ NB = NB
-+ ELSE
-+ NB = NB
-+ END IF
-+ END IF
-+ ELSE IF( C2.EQ.'PB' ) THEN
-+ IF( C3.EQ.'TRF' ) THEN
-+ IF( SNAME ) THEN
-+ IF( N2.LE.64 ) THEN
-+ NB = NB
-+ ELSE
-+ NB = NB
-+ END IF
-+ ELSE
-+ IF( N2.LE.64 ) THEN
-+ NB = NB
-+ ELSE
-+ NB = NB
-+ END IF
-+ END IF
-+ END IF
-+ ELSE IF( C2.EQ.'TR' ) THEN
-+ IF( C3.EQ.'TRI' ) THEN
-+ IF( SNAME ) THEN
-+ NB = NB
-+ ELSE
-+ NB = NB
-+ END IF
-+ END IF
-+ ELSE IF( C2.EQ.'LA' ) THEN
-+ IF( C3.EQ.'UUM' ) THEN
-+ IF( SNAME ) THEN
-+ NB = NB
-+ ELSE
-+ NB = NB
-+ END IF
-+ END IF
-+ ELSE IF( SNAME .AND. C2.EQ.'ST' ) THEN
-+ IF( C3.EQ.'EBZ' ) THEN
-+ NB = 1
-+ END IF
-+ END IF
- *
- ILAENV = NB
- RETURN
diff --git a/math/atlas/files/patch-mmsearch.c b/math/atlas/files/patch-mmsearch.c
deleted file mode 100644
index eb91fa7af5be..000000000000
--- a/math/atlas/files/patch-mmsearch.c
+++ /dev/null
@@ -1,16 +0,0 @@
-http://math-atlas.sourceforge.net/errata.html
-Misdetection of nregs causes some x86 installs to go awry.
-
---- tune/blas/gemm/mmsearch.c Mon Dec 22 09:11:57 2003
-+++ tune/blas/gemm/mmsearch.c Wed Mar 7 02:42:27 2007
-@@ -822,6 +822,10 @@
- int lat, NO1D=0;
- double mf0, mf1, mf;
-
-+ #if defined(ATL_GAS_x8632) || defined(ATL_GAS_x8664)
-+ return(0);
-+ #endif
-+
- if (pre == 'z') pre = 'd';
- else if (pre == 'c') pre = 's';
-
diff --git a/math/atlas/files/patch-tfc.c b/math/atlas/files/patch-tfc.c
deleted file mode 100644
index 3520d7f59746..000000000000
--- a/math/atlas/files/patch-tfc.c
+++ /dev/null
@@ -1,13 +0,0 @@
-http://math-atlas.sourceforge.net/errata.html
-Install dies in tfc / ?Xover.h is incomplete
---- tune/blas/gemm/tfc.c Mon Dec 22 09:11:57 2003
-+++ tune/blas/gemm/tfc.c Wed Mar 7 02:01:20 2007
-@@ -55,7 +55,7 @@
- double time00();
-
- #define DENMAT 175
--#define MAXALLOC (3*1024*1024*8)
-+#define MAXALLOC (8*1024*1024*8)
-
- #ifdef ATL_DeclareSlens
- F77_INTEGER ATL_Slen1, ATL_Slen2;
diff --git a/math/atlas/files/patch-tune+sysinfo+L1CacheSize.c b/math/atlas/files/patch-tune+sysinfo+L1CacheSize.c
index 2028b4ae92b8..f93ac6da884f 100644
--- a/math/atlas/files/patch-tune+sysinfo+L1CacheSize.c
+++ b/math/atlas/files/patch-tune+sysinfo+L1CacheSize.c
@@ -1,5 +1,5 @@
---- tune/sysinfo/L1CacheSize.c Mon Dec 22 23:11:53 2003
-+++ ../../L1CacheSize.c Tue Jun 28 13:37:10 2005
+--- tune/sysinfo/L1CacheSize.c.orig Tue Dec 19 06:48:02 2006
++++ tune/sysinfo/L1CacheSize.c Wed Dec 27 12:43:59 2006
@@ -31,7 +31,7 @@
#include <stdio.h>
#include <stdlib.h>
@@ -9,12 +9,12 @@
#ifndef time00
#define time00 ATL_cputime
-@@ -134,7 +134,7 @@
+@@ -267,7 +267,7 @@
main(int nargs, char *args[])
{
-- int L1Size, tmp, MaxSize=64, correct=1;
-+ int L1Size, tmp, MaxSize=256, correct=1;
+- int L1Size, MaxSize=64, correct=1;
++ int L1Size, MaxSize=256, correct=1;
FILE *L1f;
if (nargs > 2)
diff --git a/math/atlas/files/thread-patch b/math/atlas/files/thread-patch
index 5d6521809593..ea23f566a144 100644
--- a/math/atlas/files/thread-patch
+++ b/math/atlas/files/thread-patch
@@ -1,11 +1,12 @@
---- config.c.orig Tue Jul 1 12:35:09 2003
-+++ config.c Tue Jul 1 12:35:44 2003
-@@ -79,7 +79,7 @@
- char *usermmnam[2] = {"", "GOTO"};
- enum USERGEMM {UG_None=0, UG_GOTO};
-
--int XCOMP=0, THREADS=0, USEWINF77=0, NLINES=0, ISWIN=0;
-+int XCOMP=0, THREADS=1, USEWINF77=0, NLINES=0, ISWIN=0; // force threading for single processor
- char TARGNAM[512];
- enum MACHTYPE mach=MACHOther;
-
+--- CONFIG/src/SpewMakeInc.c~ Fri Feb 16 11:40:19 2007
++++ CONFIG/src/SpewMakeInc.c Fri Feb 16 11:41:06 2007
+@@ -332,7 +332,8 @@
+ &mhz, &ptrbits, &ncpu, comps, &gccflags, &outfile, &srcdir,
+ &blddir, &USEDEFL1, &USEARCHDEF, &nof77, &f2cdefs, &cdefs, &pmake,
+ &flapack, &smaflags, &dmaflags, &f77lib, &l2size, &targ);
+- if (ncpu > 1) THREADS = 1;
++ /* if (ncpu > 1) THREADS = 1; */
++ THREADS = 1;
+ if (!outfile)
+ fpout = stdout;
+ else
diff --git a/math/atlas/files/timing_tolerance-patch b/math/atlas/files/timing_tolerance-patch
deleted file mode 100644
index 5113e28405ab..000000000000
--- a/math/atlas/files/timing_tolerance-patch
+++ /dev/null
@@ -1,12 +0,0 @@
-http://math-atlas.sourceforge.net/errata.html#tol
---- tune/sysinfo/GetSysSum.c~ Sat Jul 24 20:40:05 2004
-+++ tune/sysinfo/GetSysSum.c Sun Jun 26 07:52:43 2005
-@@ -116,7 +116,7 @@
- fprintf(fpout, "#define ATL_fplat %d\n", lat);
- fprintf(fpout, "#define ATL_lbnreg %d\n", lbnreg);
- fprintf(fpout, "#define ATL_mmnreg %d\n", mmnreg);
-- fprintf(fpout, "#define ATL_nkflop %d\n", nkflop);
-+ fprintf(fpout, "#define ATL_nkflop %d\n", nkflop*5);
- fprintf(fpout, "\n#endif\n");
- fclose(fpout);
- }
diff --git a/math/atlas/pkg-descr b/math/atlas/pkg-descr
index c59c0267a409..cd9ce82d1dd3 100644
--- a/math/atlas/pkg-descr
+++ b/math/atlas/pkg-descr
@@ -2,17 +2,23 @@ The ATLAS (Automatically Tuned Linear Algebra Software) project is
an ongoing research effort focusing on applying empirical techniques
in order to provide portable performance.
-At present, it provides C and Fortran77 interfaces to a
-portably efficient BLAS implementation, as well as a few routines from LAPACK.
+At present, it provides C and Fortran77 interfaces to a portable,
+efficient BLAS implementation, as well as enhanced versions of
+a few routines from LAPACK.
-If you use blas, you can simply change flags when linking,
-from -lblas to -lf77blas -latlas (order is important).
+If you want to link software to ATLAS rather than the standard BLAS, simply
+use -lf77blas -latlas (order is important), or -lptf77blas -latlas for the
+threaded library (which is primarily useful on SMP machines), in place of
+the usual -lblas. Corresponding pure C versions of the ATLAS libraries are
+also included, in libcblas and libptcblas.
-A few routines from LAPACK are merged into one library as libalapack.
-It requres both C and Fortran77 interfaces, and thus that link line would be:
--lalapack -lf77blas -lcblas -latlas -lg2c -lm .
-
-Other choice of CC and CFLAGS are *NOT* recommended.
-They are already optimized for this platform and automatically searched.
+The ATLAS-enhanced LAPACK routines are also provided.
+To link software with this library instead of the standard LAPACK, use
+-L/usr/local/lib/gcc-4.2.3 -L/usr/local/lib/gcc-4.2.3/gcc/i386-portbld-freebsd7.0/4.2.3 -lalapack -lf77blas -lcblas -latlas -lgfortranbegin -lgfortran -lm, or
+-L/usr/local/lib/gcc-4.2.3 -L/usr/local/lib/gcc-4.2.3/gcc/i386-portbld-freebsd7.0/4.2.3 -lalapack_r -lptf77blas -lptcblas -latlas -lgfortranbegin -lgfortran
+-lm for the threaded library, in place of the usual -llapack.
+Note that
+-L/usr/local/lib/gcc-4.2.3 -L/usr/local/lib/gcc-4.2.3/gcc/i386-portbld-freebsd7.0/4.2.3
+depends on your environment.
WWW: http://math-atlas.sourceforge.net/
diff --git a/math/atlas/pkg-plist b/math/atlas/pkg-plist
index f72987bc9372..73fb82ea9e77 100644
--- a/math/atlas/pkg-plist
+++ b/math/atlas/pkg-plist
@@ -1,7 +1,5 @@
include/cblas.h
include/clapack.h
-include/blas.h
-include/lapack.h
%%WITH_STATICLIB%%lib/libalapack.a
lib/libalapack.so.2
lib/libalapack.so
@@ -32,13 +30,8 @@ lib/libptcblas.so
%%WITH_STATICLIB%%lib/libptf77blas.a
lib/libptf77blas.so.2
lib/libptf77blas.so
-%%WITH_STATICLIB%%lib/libtstatlas.a
-lib/libtstatlas.so.2
-lib/libtstatlas.so
-%%WITH_STATICLIB%%lib/libtstatlas_r.a
-lib/libtstatlas_r.so.2
-lib/libtstatlas_r.so
%%PORTDOCS%%share/doc/atlas/AtlasCredits.txt
+%%PORTDOCS%%share/doc/atlas/BootSequence.txt
%%PORTDOCS%%share/doc/atlas/ChangeLog
%%PORTDOCS%%share/doc/atlas/DirStruct.txt
%%PORTDOCS%%share/doc/atlas/INDEX.txt
@@ -46,60 +39,12 @@ lib/libtstatlas_r.so
%%PORTDOCS%%share/doc/atlas/TestTime.txt
%%PORTDOCS%%share/doc/atlas/TroubleShoot.txt
%%PORTDOCS%%share/doc/atlas/Windows.txt
-%%PORTDOCS%%share/doc/atlas/atlas_contrib.ps
-%%PORTDOCS%%share/doc/atlas/atlas_devel.ps
-%%PORTDOCS%%share/doc/atlas/atlas_over.ps
-%%PORTDOCS%%share/doc/atlas/cblas.ps
-%%PORTDOCS%%share/doc/atlas/cblasqref.ps
-%%PORTDOCS%%share/doc/atlas/f77blasqref.ps
-%%PORTDOCS%%share/doc/atlas/lapackqref.ps
+%%PORTDOCS%%share/doc/atlas/atlas_contrib.pdf
+%%PORTDOCS%%share/doc/atlas/atlas_devel.pdf
+%%PORTDOCS%%share/doc/atlas/atlas_install.pdf
+%%PORTDOCS%%share/doc/atlas/atlas_over.pdf
+%%PORTDOCS%%share/doc/atlas/cblas.pdf
+%%PORTDOCS%%share/doc/atlas/cblasqref.pdf
+%%PORTDOCS%%share/doc/atlas/f77blasqref.pdf
+%%PORTDOCS%%share/doc/atlas/lapackqref.pdf
%%PORTDOCS%%@dirrm share/doc/atlas
-%%EXAMPLESDIR%%/xcl1blastst
-%%EXAMPLESDIR%%/xcl2blastst
-%%EXAMPLESDIR%%/xcl3blastst
-%%EXAMPLESDIR%%/xcl3blastst_pt
-%%EXAMPLESDIR%%/xcllttst
-%%EXAMPLESDIR%%/xcllttstF
-%%EXAMPLESDIR%%/xcllttstF_pt
-%%EXAMPLESDIR%%/xcllttst_pt
-%%EXAMPLESDIR%%/xclutst
-%%EXAMPLESDIR%%/xclutstF
-%%EXAMPLESDIR%%/xclutstF_pt
-%%EXAMPLESDIR%%/xclutst_pt
-%%EXAMPLESDIR%%/xdl1blastst
-%%EXAMPLESDIR%%/xdl2blastst
-%%EXAMPLESDIR%%/xdl3blastst
-%%EXAMPLESDIR%%/xdl3blastst_pt
-%%EXAMPLESDIR%%/xdllttst
-%%EXAMPLESDIR%%/xdllttstF
-%%EXAMPLESDIR%%/xdllttstF_pt
-%%EXAMPLESDIR%%/xdllttst_pt
-%%EXAMPLESDIR%%/xdlutst
-%%EXAMPLESDIR%%/xdlutstF
-%%EXAMPLESDIR%%/xdlutstF_pt
-%%EXAMPLESDIR%%/xdlutst_pt
-%%EXAMPLESDIR%%/xsl1blastst
-%%EXAMPLESDIR%%/xsl2blastst
-%%EXAMPLESDIR%%/xsl3blastst
-%%EXAMPLESDIR%%/xsl3blastst_pt
-%%EXAMPLESDIR%%/xsllttst
-%%EXAMPLESDIR%%/xsllttstF
-%%EXAMPLESDIR%%/xsllttstF_pt
-%%EXAMPLESDIR%%/xsllttst_pt
-%%EXAMPLESDIR%%/xslutst
-%%EXAMPLESDIR%%/xslutstF
-%%EXAMPLESDIR%%/xslutstF_pt
-%%EXAMPLESDIR%%/xslutst_pt
-%%EXAMPLESDIR%%/xzl1blastst
-%%EXAMPLESDIR%%/xzl2blastst
-%%EXAMPLESDIR%%/xzl3blastst
-%%EXAMPLESDIR%%/xzl3blastst_pt
-%%EXAMPLESDIR%%/xzllttst
-%%EXAMPLESDIR%%/xzllttstF
-%%EXAMPLESDIR%%/xzllttstF_pt
-%%EXAMPLESDIR%%/xzllttst_pt
-%%EXAMPLESDIR%%/xzlutst
-%%EXAMPLESDIR%%/xzlutstF
-%%EXAMPLESDIR%%/xzlutstF_pt
-%%EXAMPLESDIR%%/xzlutst_pt
-@dirrm %%EXAMPLESDIR%%