diff options
author | Determinant <ted.sybil@gmail.com> | 2015-08-14 11:51:42 +0800 |
---|---|---|
committer | Determinant <ted.sybil@gmail.com> | 2015-08-14 11:51:42 +0800 |
commit | 96a32415ab43377cf1575bd3f4f2980f58028209 (patch) | |
tree | 30a2d92d73e8f40ac87b79f6f56e227bfc4eea6e /kaldi_io/src/tools/ATLAS/include/atlas_f77.h | |
parent | c177a7549bd90670af4b29fa813ddea32cfe0f78 (diff) |
add implementation for kaldi io (by ymz)
Diffstat (limited to 'kaldi_io/src/tools/ATLAS/include/atlas_f77.h')
-rw-r--r-- | kaldi_io/src/tools/ATLAS/include/atlas_f77.h | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/kaldi_io/src/tools/ATLAS/include/atlas_f77.h b/kaldi_io/src/tools/ATLAS/include/atlas_f77.h new file mode 100644 index 0000000..1586fba --- /dev/null +++ b/kaldi_io/src/tools/ATLAS/include/atlas_f77.h @@ -0,0 +1,83 @@ +/* + * Automatically Tuned Linear Algebra Software v3.8.3 + * (C) Copyright 1997 R. Clint Whaley + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions, and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. The name of the ATLAS group or the names of its contributers may + * not be used to endorse or promote products derived from this + * software without specific written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ATLAS GROUP OR ITS CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + */ +#ifndef ATLAS_F77_H +#define ATLAS_F77_H + + #ifndef ATL_F77_SUBROUTINE + #define ATL_F77_SUBROUTINE void + #endif + #ifndef F77_INTEGER + #define F77_INTEGER int + #else + #define ATL_FunkyInts + #endif + #if defined(CRAY) + #define UseTransChar 1 + #include <fortran.h> + #define F77_CHAR _fcd + #define ATL_F2C_TransChar(c) (*(_fcdtocp(c) )) + #define ATL_C2F_TransChar(c) (_cptofcd(&(c), 1)) + #elif defined(StringStructVal) + typedef struct {char *cp; F77_INTEGER len;} F77_CHAR; + #define ATL_F2C_TransChar(c) (*(c.cp)) + #define UseTransChar 2 + #elif defined(StringStructPtr) + typedef struct {char *cp; F77_INTEGER len;} F77_CHAR; + #define ATL_F2C_TransChar(c) (*(c->cp)) + #define UseTransChar 3 + #else + #define ATL_DeclareSlens + #define F77_CHAR char * + #define ATL_F2C_TransChar(c) (*(c)) + #define ATL_C2F_TransChar(c) (&(c)) + #define ATL_STRLEN_1 ,F77_INTEGER ATL_Slen1 + #define ATL_STRLEN_2 ,F77_INTEGER ATL_Slen1, F77_INTEGER ATL_Slen2 + #define ATL_STRLEN_3 ,F77_INTEGER ATL_Slen1, F77_INTEGER ATL_Slen2, \ + F77_INTEGER ATL_Slen3 + #define ATL_STRLEN_4 ,F77_INTEGER ATL_Slen1, F77_INTEGER ATL_Slen2, \ + F77_INTEGER ATL_Slen3, F77_INTEGER ATL_Slen4 + #define ATL_STRLEN_1_para ,ATL_Slen1 + #define ATL_STRLEN_2_para ,ATL_Slen1, ATL_Slen2 + #define ATL_STRLEN_3_para ,ATL_Slen1, ATL_Slen2, ATL_Slen3 + #define ATL_STRLEN_4_para ,ATL_Slen1, ATL_Slen2, ATL_Slen3, ATL_Slen4 + #endif + + #ifndef ATL_STRLEN_1 + #define ATL_STRLEN_1 + #define ATL_STRLEN_2 + #define ATL_STRLEN_3 + #define ATL_STRLEN_4 + #define ATL_STRLEN_1_para + #define ATL_STRLEN_2_para + #define ATL_STRLEN_3_para + #define ATL_STRLEN_4_para + #endif + +#endif |