~ubuntu-branches/ubuntu/vivid/atlas/vivid

« back to all changes in this revision

Viewing changes to include/clapack.h

  • Committer: Package Import Robot
  • Author(s): Sébastien Villemot, Sylvestre Ledru, Sébastien Villemot
  • Date: 2013-06-11 15:58:16 UTC
  • mfrom: (1.1.4) (25 sid)
  • mto: This revision was merged to the branch mainline in revision 26.
  • Revision ID: package-import@ubuntu.com-20130611155816-8xeeiziu1iml040c
Tags: 3.10.1-1
[ Sylvestre Ledru ]
* New upstream release (Closes: #609287)

[ Sébastien Villemot ]
* Provide architectural defaults (i.e. precomputed timings) for all
  release archs (except armel and mips for the time being, due to slow
  porterboxes). This will make the package build much faster and should
  eliminate transient build failures due to excessive variance in the
  timings.
* Move symlinks for lib{cblas,f77blas,atlas,lapack_atlas} out of the
  libblas.so.3 alternative and make them always present, so that
  software relying on these libs do not break when another alternative
  is selected for BLAS
* ATLAS now has improved ARM support with native asm constructs. This required
  the following tunes:
  + armel-is-v4t.diff: new patch, prevents FTBFS on armel; otherwise,
    ATLAS uses asm constructs too recent for the platform (armel is only v4t)
  + debian/rules: on armhf, define the ATL_ARM_HARDFP flag; otherwise the asm
    constructs use the soft-float ABI for passing floating points
  + on armhf, ensure that -mfloat-abi=softfp and -mcpu=vfpv3 flags are never
    used; this is implemented via a patch (armhf.diff) and by the use of fixed
    archdefs
* The generic package is now built without multi-threading, because otherwise
  the package fails to build on some single-processor machines (this required
  the introduction of a patch: fix-non-threaded-build.diff). As a side effect,
  the build of the custom package gracefully handles non-threaded
  builds. (Closes: #602524)
* Add libblas.a as slave in the libblas.so alternative (Closes: #701921)
* Add symlinks for lib{f77blas,atlas}.a in /usr/lib (Closes: #666203)
* Modify shlibs file of libatlas3-base, such that packages using
  libblas/liblapack depend on any BLAS/LAPACK alternative, while packages
  depending on ATLAS-specific libraries (e.g. libatlas.so) depend specifically
  on libatlas3-base.
* corei1.diff: remove patch, applied upstream
* Use my @debian.org email address
* Remove obsolete DM-Upload-Allowed flag
* Switch VCS to git
* Remove Conflicts/Replaces against pre-squeeze packages
* libatlas-base-dev now provides libblas.so, as libblas-dev
* No longer use -Wa,--noexecstack in CFLAGS, it makes the package FTBFS
* Do not use POWER3 arch for powerpcspe port (Closes: #701068)
* Bump to debhelper compat level 9
* README.Debian: mention that devscripts is needed to compile the custom
  package (Closes: #697431)
* Bump Standards-Version to 3.9.4. As a consequence, add Built-Using
  fields because the package embeds stuff from liblapack-pic

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
 *             Automatically Tuned Linear Algebra Software v3.8.4
3
 
 *                    (C) Copyright 1999 R. Clint Whaley
4
 
 *
5
 
 * Redistribution and use in source and binary forms, with or without
6
 
 * modification, are permitted provided that the following conditions
7
 
 * are met:
8
 
 *   1. Redistributions of source code must retain the above copyright
9
 
 *      notice, this list of conditions and the following disclaimer.
10
 
 *   2. Redistributions in binary form must reproduce the above copyright
11
 
 *      notice, this list of conditions, and the following disclaimer in the
12
 
 *      documentation and/or other materials provided with the distribution.
13
 
 *   3. The name of the ATLAS group or the names of its contributers may
14
 
 *      not be used to endorse or promote products derived from this
15
 
 *      software without specific written permission.
16
 
 *
17
 
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18
 
 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
19
 
 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
20
 
 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ATLAS GROUP OR ITS CONTRIBUTORS
21
 
 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22
 
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23
 
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24
 
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25
 
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26
 
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27
 
 * POSSIBILITY OF SUCH DAMAGE.
28
 
 *
29
 
 */
30
 
 
31
1
#ifndef CLAPACK_H
32
2
 
33
3
#define CLAPACK_H
34
4
#include "cblas.h"
35
5
 
 
6
#ifndef ATL_INT
 
7
   #define ATL_INT int
 
8
#endif
 
9
#ifndef ATL_CINT
 
10
   #define ATL_CINT const ATL_INT
 
11
#endif
36
12
#ifndef ATLAS_ORDER
37
13
   #define ATLAS_ORDER CBLAS_ORDER
38
14
#endif
66
42
int clapack_slauum(const enum ATLAS_ORDER Order, const enum ATLAS_UPLO Uplo,
67
43
                   const int N, float *A, const int lda);
68
44
int clapack_strtri(const enum ATLAS_ORDER Order,const enum ATLAS_UPLO Uplo,
69
 
                  const enum ATLAS_DIAG Diag,const int N, float *A, const int lda);
 
45
                   const enum ATLAS_DIAG Diag, const int N, float *A,
 
46
                   const int lda);
 
47
int clapack_sgels(const enum CBLAS_ORDER Order,
 
48
                  const enum CBLAS_TRANSPOSE TA,
 
49
                  ATL_CINT M, ATL_CINT N, ATL_CINT NRHS, float *A,
 
50
                  ATL_CINT lda, float *B, const int ldb);
 
51
int clapack_sgelqf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
52
                   float *A, ATL_CINT lda, float *TAU);
 
53
int clapack_sgeqlf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
54
                   float *A, ATL_CINT lda, float *TAU);
 
55
int clapack_sgerqf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
56
                   float *A, ATL_CINT lda, float *TAU);
 
57
int clapack_sgeqrf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
58
                   float *A, ATL_CINT lda, float *TAU);
70
59
 
71
60
int clapack_dgesv(const enum CBLAS_ORDER Order, const int N, const int NRHS,
72
61
                  double *A, const int lda, int *ipiv,
92
81
int clapack_dlauum(const enum ATLAS_ORDER Order, const enum ATLAS_UPLO Uplo,
93
82
                   const int N, double *A, const int lda);
94
83
int clapack_dtrtri(const enum ATLAS_ORDER Order,const enum ATLAS_UPLO Uplo,
95
 
                  const enum ATLAS_DIAG Diag,const int N, double *A, const int lda);
 
84
                   const enum ATLAS_DIAG Diag, const int N, double *A,
 
85
                   const int lda);
 
86
int clapack_dgels(const enum CBLAS_ORDER Order,
 
87
                  const enum CBLAS_TRANSPOSE TA,
 
88
                  ATL_CINT M, ATL_CINT N, ATL_CINT NRHS, double *A,
 
89
                  ATL_CINT lda, double *B, const int ldb);
 
90
int clapack_dgelqf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
91
                   double *A, ATL_CINT lda, double *TAU);
 
92
int clapack_dgeqlf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
93
                   double *A, ATL_CINT lda, double *TAU);
 
94
int clapack_dgerqf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
95
                   double *A, ATL_CINT lda, double *TAU);
 
96
int clapack_dgeqrf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
97
                   double *A, ATL_CINT lda, double *TAU);
96
98
 
97
99
int clapack_cgesv(const enum CBLAS_ORDER Order, const int N, const int NRHS,
98
100
                  void *A, const int lda, int *ipiv,
118
120
int clapack_clauum(const enum ATLAS_ORDER Order, const enum ATLAS_UPLO Uplo,
119
121
                   const int N, void *A, const int lda);
120
122
int clapack_ctrtri(const enum ATLAS_ORDER Order,const enum ATLAS_UPLO Uplo,
121
 
                  const enum ATLAS_DIAG Diag,const int N, void *A, const int lda);
 
123
                   const enum ATLAS_DIAG Diag, const int N, void *A,
 
124
                   const int lda);
 
125
int clapack_cgels(const enum CBLAS_ORDER Order,
 
126
                  const enum CBLAS_TRANSPOSE TA,
 
127
                  ATL_CINT M, ATL_CINT N, ATL_CINT NRHS, void *A,
 
128
                  ATL_CINT lda, void *B, const int ldb);
 
129
int clapack_cgelqf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
130
                   void *A, ATL_CINT lda, void *TAU);
 
131
int clapack_cgeqlf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
132
                   void *A, ATL_CINT lda, void *TAU);
 
133
int clapack_cgerqf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
134
                   void *A, ATL_CINT lda, void *TAU);
 
135
int clapack_cgeqrf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
136
                   void *A, ATL_CINT lda, void *TAU);
122
137
 
123
138
int clapack_zgesv(const enum CBLAS_ORDER Order, const int N, const int NRHS,
124
139
                  void *A, const int lda, int *ipiv,
144
159
int clapack_zlauum(const enum ATLAS_ORDER Order, const enum ATLAS_UPLO Uplo,
145
160
                   const int N, void *A, const int lda);
146
161
int clapack_ztrtri(const enum ATLAS_ORDER Order,const enum ATLAS_UPLO Uplo,
147
 
                  const enum ATLAS_DIAG Diag,const int N, void *A, const int lda);
 
162
                   const enum ATLAS_DIAG Diag, const int N, void *A,
 
163
                   const int lda);
 
164
int clapack_zgels(const enum CBLAS_ORDER Order,
 
165
                  const enum CBLAS_TRANSPOSE TA,
 
166
                  ATL_CINT M, ATL_CINT N, ATL_CINT NRHS, void *A,
 
167
                  ATL_CINT lda, void *B, const int ldb);
 
168
int clapack_zgelqf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
169
                   void *A, ATL_CINT lda, void *TAU);
 
170
int clapack_zgeqlf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
171
                   void *A, ATL_CINT lda, void *TAU);
 
172
int clapack_zgerqf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
173
                   void *A, ATL_CINT lda, void *TAU);
 
174
int clapack_zgeqrf(const enum CBLAS_ORDER Order, ATL_CINT M, ATL_CINT N,
 
175
                   void *A, ATL_CINT lda, void *TAU);
148
176
 
149
177
#endif