SCALAPACK 2.2.2
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches
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}
#define Int
Definition Bconfig.h:22
PBTYP_T * PB_Cstypeset(void)
#define SREAL
Definition pblas.h:473
void Csgerv2d()
void Csgebr2d()
void Csgebs2d()
void Csgsum2d()
void Csgesd2d()
#define ssymm_
Definition PBblas.h:181
#define strmv_
Definition PBblas.h:149
#define sger_
Definition PBblas.h:159
#define strmm_
Definition PBblas.h:188
#define sswap_
Definition PBblas.h:95
#define strsv_
Definition PBblas.h:154
#define ssyr2_
Definition PBblas.h:171
#define strsm_
Definition PBblas.h:193
#define sgemm_
Definition PBblas.h:176
#define scopy_
Definition PBblas.h:100
#define sgemv_
Definition PBblas.h:139
#define ssyrk_
Definition PBblas.h:198
#define ssyr_
Definition PBblas.h:166
#define ssymv_
Definition PBblas.h:144
#define ssyr2k_
Definition PBblas.h:205
#define saxpy_
Definition PBblas.h:105
#define smmddac_
Definition PBtools.h:644
#define smmddat_
Definition PBtools.h:650
#define ONE
Definition PBtools.h:64
#define stzpad_
Definition PBtools.h:693
#define satrmv_
Definition PBtools.h:726
#define svvdot_
Definition PBtools.h:686
#define smmdda_
Definition PBtools.h:639
#define smmcadd_
Definition PBtools.h:628
#define smmadd_
Definition PBtools.h:617
#define stzscal_
Definition PBtools.h:703
#define smmddact_
Definition PBtools.h:655
#define ZERO
Definition PBtools.h:66
#define scshft_
Definition PBtools.h:676
#define smmtcadd_
Definition PBtools.h:633
#define stzpadcpy_
Definition PBtools.h:698
#define sasymv_
Definition PBtools.h:719
#define sagemv_
Definition PBtools.h:714
#define srshft_
Definition PBtools.h:681
#define smmtadd_
Definition PBtools.h:623
#define sset_
Definition PBtools.h:663
ATRMV_T Fatrmv
Definition pblas.h:381
char type
Definition pblas.h:331
Int usiz
Definition pblas.h:332
TRSM_T Ftrsm
Definition pblas.h:398
TZPADCPY_T Ftzpadcpy
Definition pblas.h:361
COPY_T Fcopy
Definition pblas.h:369
VVDOT_T Fvvdotc
Definition pblas.h:358
MMADD_T Fmmddac
Definition pblas.h:350
AHEMV_T Fahemv
Definition pblas.h:380
VVDOT_T Fvvdotu
Definition pblas.h:357
AGEMV_T Fagemv
Definition pblas.h:378
SYMM_T Fsymm
Definition pblas.h:391
SYR2K_T Fsyr2k
Definition pblas.h:395
SWAP_T Fswap
Definition pblas.h:370
HEMV_T Fhemv
Definition pblas.h:374
TRMM_T Ftrmm
Definition pblas.h:397
SYMV_T Fsymv
Definition pblas.h:373
MMADD_T Fmmadd
Definition pblas.h:345
SYR2_T Fsyr2
Definition pblas.h:387
TRSV_T Ftrsv
Definition pblas.h:376
MMADD_T Fmmdda
Definition pblas.h:349
HER_T Fher
Definition pblas.h:386
HER2K_T Fher2k
Definition pblas.h:396
GEMV_T Fgemv
Definition pblas.h:372
Int size
Definition pblas.h:333
GSUM2D_T Cgsum2d
Definition pblas.h:343
GERV2D_T Cgerv2d
Definition pblas.h:340
TZSCAL_T Ftzcnjg
Definition pblas.h:366
GEMM_T Fgemm
Definition pblas.h:390
HEMM_T Fhemm
Definition pblas.h:392
MMADD_T Fmmddact
Definition pblas.h:352
ASYMV_T Fasymv
Definition pblas.h:379
TZSCAL_T Fhescal
Definition pblas.h:365
MMADD_T Fmmddat
Definition pblas.h:351
GEBR2D_T Cgebr2d
Definition pblas.h:342
GERU_T Fgeru
Definition pblas.h:384
SYRK_T Fsyrk
Definition pblas.h:393
MMADD_T Fmmtcadd
Definition pblas.h:348
GESD2D_T Cgesd2d
Definition pblas.h:339
char * zero
Definition pblas.h:335
MMSHFT_T Fcshft
Definition pblas.h:354
TRMV_T Ftrmv
Definition pblas.h:375
HERK_T Fherk
Definition pblas.h:394
TZSCAL_T Ftzscal
Definition pblas.h:364
char * negone
Definition pblas.h:337
char * one
Definition pblas.h:336
MMADD_T Fmmcadd
Definition pblas.h:346
VVSET_T Fset
Definition pblas.h:362
TZPAD_T Ftzpad
Definition pblas.h:360
GEBS2D_T Cgebs2d
Definition pblas.h:341
SYR_T Fsyr
Definition pblas.h:385
GERC_T Fgerc
Definition pblas.h:383
MMADD_T Fmmtadd
Definition pblas.h:347
MMSHFT_T Frshft
Definition pblas.h:355
AXPY_T Faxpy
Definition pblas.h:368
HER2_T Fher2
Definition pblas.h:388