ScaLAPACK 2.1  2.1
ScaLAPACK: Scalable Linear Algebra PACKage
PB_Cstypeset.c
Go to the documentation of this file.
1 /* ---------------------------------------------------------------------
2 *
3 * -- PBLAS auxiliary routine (version 2.0) --
4 * University of Tennessee, Knoxville, Oak Ridge National Laboratory,
5 * and University of California, Berkeley.
6 * April 1, 1998
7 *
8 * ---------------------------------------------------------------------
9 */
10 /*
11 * Include files
12 */
13 #include "../pblas.h"
14 #include "../PBpblas.h"
15 #include "../PBtools.h"
16 #include "../PBblacs.h"
17 #include "../PBblas.h"
18 
20 {
21 /*
22 * Purpose
23 * =======
24 *
25 * PB_Cstypeset on the first call initializes a static structure contai-
26 * ning typed information and returns a pointer to it. The other calls
27 * to this routine just returns this pointer.
28 *
29 * -- Written on April 1, 1998 by
30 * R. Clint Whaley, University of Tennessee, Knoxville 37996, USA.
31 *
32 * ---------------------------------------------------------------------
33 */
34 /*
35 * .. Local Scalars ..
36 */
37  static int setup=0;
38  static PBTYP_T TypeStruct;
39  static float zero, one, negone;
40 /* ..
41 * .. Executable Statements ..
42 *
43 */
44  if( setup ) return( &TypeStruct );
45 
46  setup = 1;
47 
48  TypeStruct.type = SREAL;
49  TypeStruct.usiz = sizeof( float );
50  TypeStruct.size = sizeof( float );
51 
52  zero = ZERO;
53  one = ONE;
54  negone = -ONE;
55 
56  TypeStruct.zero = (char *) (&zero);
57  TypeStruct.one = (char *) (&one);
58  TypeStruct.negone = (char *) (&negone);
59 
60  TypeStruct.Cgesd2d = Csgesd2d;
61  TypeStruct.Cgerv2d = Csgerv2d;
62  TypeStruct.Cgebs2d = Csgebs2d;
63  TypeStruct.Cgebr2d = Csgebr2d;
64  TypeStruct.Cgsum2d = Csgsum2d;
65 
66  TypeStruct.Fmmadd = smmadd_;
67  TypeStruct.Fmmcadd = smmcadd_;
68  TypeStruct.Fmmtadd = smmtadd_;
69  TypeStruct.Fmmtcadd = smmtcadd_;
70  TypeStruct.Fmmdda = smmdda_;
71  TypeStruct.Fmmddac = smmddac_;
72  TypeStruct.Fmmddat = smmddat_;
73  TypeStruct.Fmmddact = smmddact_;
74 
75  TypeStruct.Fcshft = scshft_;
76  TypeStruct.Frshft = srshft_;
77 
78  TypeStruct.Fvvdotu = svvdot_;
79  TypeStruct.Fvvdotc = svvdot_;
80 
81  TypeStruct.Fset = sset_;
82 
83  TypeStruct.Ftzpad = stzpad_;
84  TypeStruct.Ftzpadcpy = stzpadcpy_;
85  TypeStruct.Ftzscal = stzscal_;
86  TypeStruct.Fhescal = stzscal_;
87  TypeStruct.Ftzcnjg = stzscal_;
88 
89  TypeStruct.Faxpy = saxpy_;
90  TypeStruct.Fcopy = scopy_;
91  TypeStruct.Fswap = sswap_;
92 
93  TypeStruct.Fgemv = sgemv_;
94  TypeStruct.Fsymv = ssymv_;
95  TypeStruct.Fhemv = ssymv_;
96  TypeStruct.Ftrmv = strmv_;
97  TypeStruct.Ftrsv = strsv_;
98  TypeStruct.Fagemv = sagemv_;
99  TypeStruct.Fasymv = sasymv_;
100  TypeStruct.Fahemv = sasymv_;
101  TypeStruct.Fatrmv = satrmv_;
102 
103  TypeStruct.Fgerc = sger_;
104  TypeStruct.Fgeru = sger_;
105  TypeStruct.Fsyr = ssyr_;
106  TypeStruct.Fher = ssyr_;
107  TypeStruct.Fsyr2 = ssyr2_;
108  TypeStruct.Fher2 = ssyr2_;
109 
110  TypeStruct.Fgemm = sgemm_;
111  TypeStruct.Fsymm = ssymm_;
112  TypeStruct.Fhemm = ssymm_;
113  TypeStruct.Fsyrk = ssyrk_;
114  TypeStruct.Fherk = ssyrk_;
115  TypeStruct.Fsyr2k = ssyr2k_;
116  TypeStruct.Fher2k = ssyr2k_;
117  TypeStruct.Ftrmm = strmm_;
118  TypeStruct.Ftrsm = strsm_;
119 
120  return( &TypeStruct );
121 /*
122 * End of PB_Cstypeset
123 */
124 }
scshft_
F_VOID_FCT scshft_()
PBTYP_T::Fgemm
GEMM_T Fgemm
Definition: pblas.h:386
PBTYP_T::Fgerc
GERC_T Fgerc
Definition: pblas.h:379
ssyrk_
F_VOID_FCT ssyrk_()
PBTYP_T::Cgerv2d
GERV2D_T Cgerv2d
Definition: pblas.h:336
PBTYP_T::Fhescal
TZSCAL_T Fhescal
Definition: pblas.h:361
ssyr2k_
F_VOID_FCT ssyr2k_()
PBTYP_T::Fsyr2
SYR2_T Fsyr2
Definition: pblas.h:383
smmddac_
F_VOID_FCT smmddac_()
PBTYP_T::Ftzcnjg
TZSCAL_T Ftzcnjg
Definition: pblas.h:362
sasymv_
F_VOID_FCT sasymv_()
PBTYP_T::Fahemv
AHEMV_T Fahemv
Definition: pblas.h:376
PBTYP_T::Fvvdotc
VVDOT_T Fvvdotc
Definition: pblas.h:354
PBTYP_T::Fmmddat
MMADD_T Fmmddat
Definition: pblas.h:347
PBTYP_T::Fcshft
MMSHFT_T Fcshft
Definition: pblas.h:350
PBTYP_T::Ftrsv
TRSV_T Ftrsv
Definition: pblas.h:372
sset_
F_VOID_FCT sset_()
Csgesd2d
void Csgesd2d()
Csgebs2d
void Csgebs2d()
PBTYP_T::Ftrmm
TRMM_T Ftrmm
Definition: pblas.h:393
PBTYP_T::Fgemv
GEMV_T Fgemv
Definition: pblas.h:368
smmcadd_
F_VOID_FCT smmcadd_()
PBTYP_T::Ftzscal
TZSCAL_T Ftzscal
Definition: pblas.h:360
PBTYP_T::Fher
HER_T Fher
Definition: pblas.h:382
srshft_
F_VOID_FCT srshft_()
PBTYP_T::Faxpy
AXPY_T Faxpy
Definition: pblas.h:364
PBTYP_T::type
char type
Definition: pblas.h:327
PBTYP_T::Cgesd2d
GESD2D_T Cgesd2d
Definition: pblas.h:335
PBTYP_T::Ftzpad
TZPAD_T Ftzpad
Definition: pblas.h:356
sgemv_
F_VOID_FCT sgemv_()
sgemm_
F_VOID_FCT sgemm_()
PBTYP_T::usiz
int usiz
Definition: pblas.h:328
ssymv_
F_VOID_FCT ssymv_()
Csgebr2d
void Csgebr2d()
PBTYP_T::Ftrsm
TRSM_T Ftrsm
Definition: pblas.h:394
PBTYP_T::Fher2k
HER2K_T Fher2k
Definition: pblas.h:392
PBTYP_T::Fswap
SWAP_T Fswap
Definition: pblas.h:366
PBTYP_T::Fherk
HERK_T Fherk
Definition: pblas.h:390
ZERO
#define ZERO
Definition: PBtools.h:66
stzscal_
F_VOID_FCT stzscal_()
PBTYP_T::Fsyr2k
SYR2K_T Fsyr2k
Definition: pblas.h:391
PBTYP_T::Fmmcadd
MMADD_T Fmmcadd
Definition: pblas.h:342
PBTYP_T::Ftzpadcpy
TZPADCPY_T Ftzpadcpy
Definition: pblas.h:357
smmtcadd_
F_VOID_FCT smmtcadd_()
PBTYP_T::Frshft
MMSHFT_T Frshft
Definition: pblas.h:351
PBTYP_T::Fasymv
ASYMV_T Fasymv
Definition: pblas.h:375
PBTYP_T::Fmmtadd
MMADD_T Fmmtadd
Definition: pblas.h:343
PBTYP_T::Fmmdda
MMADD_T Fmmdda
Definition: pblas.h:345
strmv_
F_VOID_FCT strmv_()
smmddact_
F_VOID_FCT smmddact_()
smmtadd_
F_VOID_FCT smmtadd_()
PBTYP_T::Cgebs2d
GEBS2D_T Cgebs2d
Definition: pblas.h:337
PBTYP_T::Fmmtcadd
MMADD_T Fmmtcadd
Definition: pblas.h:344
PBTYP_T::negone
char * negone
Definition: pblas.h:331
PBTYP_T::Fset
VVSET_T Fset
Definition: pblas.h:358
Csgerv2d
void Csgerv2d()
PBTYP_T::Fmmadd
MMADD_T Fmmadd
Definition: pblas.h:341
ONE
#define ONE
Definition: PBtools.h:64
PBTYP_T::one
char * one
Definition: pblas.h:331
PBTYP_T::Fsyrk
SYRK_T Fsyrk
Definition: pblas.h:389
PBTYP_T::Ftrmv
TRMV_T Ftrmv
Definition: pblas.h:371
svvdot_
F_VOID_FCT svvdot_()
scopy_
F_VOID_FCT scopy_()
PBTYP_T::size
int size
Definition: pblas.h:329
SREAL
#define SREAL
Definition: pblas.h:469
satrmv_
F_VOID_FCT satrmv_()
PBTYP_T::Fsymm
SYMM_T Fsymm
Definition: pblas.h:387
sagemv_
F_VOID_FCT sagemv_()
PBTYP_T::Fatrmv
ATRMV_T Fatrmv
Definition: pblas.h:377
ssymm_
F_VOID_FCT ssymm_()
strmm_
F_VOID_FCT strmm_()
stzpad_
F_VOID_FCT stzpad_()
stzpadcpy_
F_VOID_FCT stzpadcpy_()
PBTYP_T::Fvvdotu
VVDOT_T Fvvdotu
Definition: pblas.h:353
PB_Cstypeset
PBTYP_T * PB_Cstypeset()
Definition: PB_Cstypeset.c:19
PBTYP_T::Fcopy
COPY_T Fcopy
Definition: pblas.h:365
PBTYP_T::Fher2
HER2_T Fher2
Definition: pblas.h:384
PBTYP_T::Cgebr2d
GEBR2D_T Cgebr2d
Definition: pblas.h:338
strsv_
F_VOID_FCT strsv_()
PBTYP_T::Cgsum2d
GSUM2D_T Cgsum2d
Definition: pblas.h:339
PBTYP_T
Definition: pblas.h:325
PBTYP_T::Fhemv
HEMV_T Fhemv
Definition: pblas.h:370
strsm_
F_VOID_FCT strsm_()
PBTYP_T::Fhemm
HEMM_T Fhemm
Definition: pblas.h:388
sswap_
F_VOID_FCT sswap_()
ssyr_
F_VOID_FCT ssyr_()
saxpy_
F_VOID_FCT saxpy_()
PBTYP_T::Fsymv
SYMV_T Fsymv
Definition: pblas.h:369
PBTYP_T::Fgeru
GERU_T Fgeru
Definition: pblas.h:380
PBTYP_T::Fmmddac
MMADD_T Fmmddac
Definition: pblas.h:346
ssyr2_
F_VOID_FCT ssyr2_()
PBTYP_T::Fsyr
SYR_T Fsyr
Definition: pblas.h:381
PBTYP_T::zero
char * zero
Definition: pblas.h:331
PBTYP_T::Fmmddact
MMADD_T Fmmddact
Definition: pblas.h:348
PBTYP_T::Fagemv
AGEMV_T Fagemv
Definition: pblas.h:374
Csgsum2d
void Csgsum2d()
smmadd_
F_VOID_FCT smmadd_()
smmddat_
F_VOID_FCT smmddat_()
sger_
F_VOID_FCT sger_()
smmdda_
F_VOID_FCT smmdda_()