diff liboctave/numeric/gsvd.cc @ 22322:93b3cdd36854

move most f77 function decls to separate header files * liboctave/numeric/lo-amos-proto.h, liboctave/numeric/lo-arpack-proto.h, liboctave/numeric/lo-blas-proto.h, liboctave/numeric/lo-fftpack-proto.h, liboctave/numeric/lo-lapack-proto.h, liboctave/numeric/lo-qrupdate-proto.h, liboctave/numeric/lo-ranlib-proto.h, liboctave/numeric/lo-slatec-proto.h: New files. * liboctave/numeric/module.mk: Update. * __pchip_deriv__.cc, dot.cc, interpreter.cc, ordschur.cc, qz.cc, CColVector.cc, CMatrix.cc, CNDArray.cc, CRowVector.cc, CSparse.cc, dColVector.cc, dMatrix.cc, dNDArray.cc, dRowVector.cc, dSparse.cc, fCColVector.cc, fCMatrix.cc, fCNDArray.cc, fCRowVector.cc, fColVector.cc, fMatrix.cc, fNDArray.cc, fRowVector.cc, EIG.cc, aepbalance.cc, chol.cc, eigs-base.cc, fEIG.cc, gepbalance.cc, gsvd.cc, hess.cc, lo-specfun.cc, lu.cc, oct-rand.cc, qr.cc, qrp.cc, randpoisson.cc, schur.cc, sparse-qr.cc, svd.cc: Use new header files.
author John W. Eaton <jwe@octave.org>
date Wed, 17 Aug 2016 00:18:08 -0400
parents bc2a5db96754
children bac0d6f07a3e
line wrap: on
line diff
--- a/liboctave/numeric/gsvd.cc	Tue Aug 16 21:38:58 2016 -0700
+++ b/liboctave/numeric/gsvd.cc	Wed Aug 17 00:18:08 2016 -0400
@@ -20,80 +20,14 @@
 #endif
 
 #include "gsvd.h"
-#include "f77-fcn.h"
 #include "lo-error.h"
+#include "lo-lapack-proto.h"
 #include "CMatrix.h"
 #include "dDiagMatrix.h"
 #include "dMatrix.h"
 
 #include <vector>
 
-extern "C"
-{
-  F77_RET_T
-  F77_FUNC (dggsvd, DGGSVD)
-   (
-     F77_CONST_CHAR_ARG_DECL,   // JOBU    (input) CHARACTER*1
-     F77_CONST_CHAR_ARG_DECL,   // JOBV    (input) CHARACTER*1
-     F77_CONST_CHAR_ARG_DECL,   // JOBQ    (input) CHARACTER*1
-     const F77_INT&,            // M       (input) INTEGER
-     const F77_INT&,            // N       (input) INTEGER
-     const F77_INT&,            // P       (input) INTEGER
-     F77_INT &,                 // K       (output) INTEGER
-     F77_INT &,                 // L       (output) INTEGER
-     F77_DBLE*,                 // A       (input/output) DOUBLE PRECISION array, dimension (LDA,N)
-     const F77_INT&,            // LDA     (input) INTEGER
-     F77_DBLE*,                 // B       (input/output) DOUBLE PRECISION array, dimension (LDB,N)
-     const F77_INT&,            // LDB     (input) INTEGER
-     F77_DBLE*,                 // ALPHA   (output) DOUBLE PRECISION array, dimension (N)
-     F77_DBLE*,                 // BETA    (output) DOUBLE PRECISION array, dimension (N)
-     F77_DBLE*,                 // U       (output) DOUBLE PRECISION array, dimension (LDU,M)
-     const F77_INT&,            // LDU     (input) INTEGER
-     F77_DBLE*,                 // V       (output) DOUBLE PRECISION array, dimension (LDV,P)
-     const F77_INT&,            // LDV     (input) INTEGER
-     F77_DBLE*,                 // Q       (output) DOUBLE PRECISION array, dimension (LDQ,N)
-     const F77_INT&,            // LDQ     (input) INTEGER
-     F77_DBLE*,                 // WORK    (workspace) DOUBLE PRECISION array
-     F77_INT*,                  // IWORK   (workspace/output) INTEGER array, dimension (N)
-     F77_INT&                   // INFO    (output)INTEGER
-     F77_CHAR_ARG_LEN_DECL
-     F77_CHAR_ARG_LEN_DECL
-     F77_CHAR_ARG_LEN_DECL
-     );
-
-  F77_RET_T
-  F77_FUNC (zggsvd, ZGGSVD)
-   (
-     F77_CONST_CHAR_ARG_DECL,   // JOBU    (input) CHARACTER*1
-     F77_CONST_CHAR_ARG_DECL,   // JOBV    (input) CHARACTER*1
-     F77_CONST_CHAR_ARG_DECL,   // JOBQ    (input) CHARACTER*1
-     const F77_INT&,            // M       (input) INTEGER
-     const F77_INT&,            // N       (input) INTEGER
-     const F77_INT&,            // P       (input) INTEGER
-     F77_INT &,                 // K       (output) INTEGER
-     F77_INT &,                 // L       (output) INTEGER
-     F77_DBLE_CMPLX*,           // A       (input/output) COMPLEX*16 array, dimension (LDA,N)
-     const F77_INT&,            // LDA     (input) INTEGER
-     F77_DBLE_CMPLX*,           // B       (input/output) COMPLEX*16 array, dimension (LDB,N)
-     const F77_INT&,            // LDB     (input) INTEGER
-     F77_DBLE*,                 // ALPHA   (output) DOUBLE PRECISION array, dimension (N)
-     F77_DBLE*,                 // BETA    (output) DOUBLE PRECISION array, dimension (N)
-     F77_DBLE_CMPLX*,           // U       (output) COMPLEX*16 array, dimension (LDU,M)
-     const F77_INT&,            // LDU     (input) INTEGER
-     F77_DBLE_CMPLX*,           // V       (output) COMPLEX*16 array, dimension (LDV,P)
-     const F77_INT&,            // LDV     (input) INTEGER
-     F77_DBLE_CMPLX*,           // Q       (output) COMPLEX*16 array, dimension (LDQ,N)
-     const F77_INT&,            // LDQ     (input) INTEGER
-     F77_DBLE_CMPLX*,           // WORK    (workspace) COMPLEX*16 array
-     F77_DBLE*,                 // RWORK   (workspace) DOUBLE PRECISION array
-     F77_INT*,                  // IWORK   (workspace/output) INTEGER array, dimension (N)
-     F77_INT&                   // INFO    (output)INTEGER
-     F77_CHAR_ARG_LEN_DECL
-     F77_CHAR_ARG_LEN_DECL
-     F77_CHAR_ARG_LEN_DECL
-     );
-}
-
 template <>
 void
 gsvd<Matrix>::ggsvd (char& jobu, char& jobv, char& jobq, octave_idx_type m,