Psi4
blas_mangle.h
Go to the documentation of this file.
1 /*
2  * @BEGIN LICENSE
3  *
4  * Psi4: an open-source quantum chemistry software package
5  *
6  * Copyright (c) 2007-2017 The Psi4 Developers.
7  *
8  * The copyrights for code used from other parties are included in
9  * the corresponding files.
10  *
11  * This file is part of Psi4.
12  *
13  * Psi4 is free software; you can redistribute it and/or modify
14  * it under the terms of the GNU Lesser General Public License as published by
15  * the Free Software Foundation, version 3.
16  *
17  * Psi4 is distributed in the hope that it will be useful,
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20  * GNU Lesser General Public License for more details.
21  *
22  * You should have received a copy of the GNU Lesser General Public License along
23  * with Psi4; if not, write to the Free Software Foundation, Inc.,
24  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
25  *
26  * @END LICENSE
27  */
28 
29 #ifndef BLAS_MANGLE_H
30 #define BLAS_MANGLE_H
31 
36 #ifndef FC_SYMBOL
37 #define FC_SYMBOL 2
38 #endif
39 
40 #ifdef USE_FCMANGLE_H
41 #include "FCMangle.h"
42 #define dgemv FC_GLOBAL(dgemv , DGEMV)
43 #define dgemm FC_GLOBAL(dgemm , DGEMM)
44 #define dcopy FC_GLOBAL(dcopy , DCOPY)
45 #define daxpy FC_GLOBAL(daxpy , DAXPY)
46 #define dnrm2 FC_GLOBAL(drnm2 , DRNM2)
47 #define dgesv FC_GLOBAL(dgesv , DGESV)
48 #define ddot FC_GLOBAL(ddot , DDOT)
49 #define dsyev FC_GLOBAL(dsyev , DSYEV)
50 #define dspev FC_GLOBAL(dspev , DSPEV)
51 #define dgesvd FC_GLOBAL(dgesvd, DGESVD)
52 #else // USE_FCMANGLE_H
53 #if FC_SYMBOL==2
54 #define dgemv dgemv_
55 #define dgemm dgemm_
56 #define dcopy dcopy_
57 #define daxpy daxpy_
58 #define dnrm2 drnm2_
59 #define dgesv dgesv_
60 #define ddot ddot_
61 #define dsyev dsyev_
62 #define dspev dspev_
63 #define dgesvd dgesvd_
64 #elif FC_SYMBOL==1
65 #define dgemv dgemv
66 #define dgemm dgemm
67 #define dcopy dcopy
68 #define daxpy daxpy
69 #define dnrm2 drnm2
70 #define dgesv dgesv
71 #define ddot ddot
72 #define dsyev dsyev
73 #define dspev dspev
74 #define dgesvd dgesvd
75 #elif FC_SYMBOL==3
76 #define dgemv DGEMV
77 #define dgemm DGEMM
78 #define dcopy DCOPY
79 #define daxpy DAXPY
80 #define dnrm2 DRNM2
81 #define dgesv DGESV
82 #define ddot DDOT
83 #define dsyev DSYEV
84 #define dspev DSPEV
85 #define dgesvd DGESVD
86 #elif FC_SYMBOL==4
87 #define dgemv DGEMV_
88 #define dgemm DGEMM_
89 #define dcopy DCOPY_
90 #define daxpy DAXPY_
91 #define dnrm2 DRNM2_
92 #define dgesv DGESV_
93 #define ddot DDOT_
94 #define dsyev DSYEV_
95 #define dspev DSPEV_
96 #define dgesvd DGESVD_
97 #endif // FC_SYMBOL
98 #endif // USE_FCMANGLE_H
99 
100 #endif