LAPACK 3.12.1
LAPACK: Linear Algebra PACKage
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
cblas_example2_64.c
Go to the documentation of this file.
1/* cblas_example2.c */
2
3#define CBLAS_API64
4#define F77_INT int64_t
5
6#include <stdio.h>
7#include <stdlib.h>
8#include "cblas_64.h"
9#include "cblas_f77.h"
10
11#define INVALID -1
12
13int main (int argc, char **argv )
14{
15 int64_t rout=-1,info=0,m,n,k,lda,ldb,ldc;
16 double A[2] = {0.0,0.0},
17 B[2] = {0.0,0.0},
18 C[2] = {0.0,0.0},
19 ALPHA=0.0, BETA=0.0;
20
21 if (argc > 2){
22 rout = atoi(argv[1]);
23 info = atoi(argv[2]);
24 }
25
26 if (rout == 1) {
27 if (info==0) {
28 printf("Checking if cblas_dgemm fails on parameter 4\n");
30 ALPHA, A, 1, B, 1, BETA, C, 1 );
31 }
32 if (info==1) {
33 printf("Checking if cblas_dgemm fails on parameter 5\n");
35 ALPHA, A, 1, B, 1, BETA, C, 1 );
36 }
37 if (info==2) {
38 printf("Checking if cblas_dgemm fails on parameter 9\n");
40 ALPHA, A, 1, B, 1, BETA, C, 2 );
41 }
42 if (info==3) {
43 printf("Checking if cblas_dgemm fails on parameter 11\n");
45 ALPHA, A, 1, B, 1, BETA, C, 1 );
46 }
47 } else {
48 if (info==0) {
49 printf("Checking if F77_dgemm fails on parameter 3\n");
50 m=INVALID; n=0; k=0; lda=1; ldb=1; ldc=1;
51 F77_dgemm( "T", "N", &m, &n, &k,
52 &ALPHA, A, &lda, B, &ldb, &BETA, C, &ldc );
53 }
54 if (info==1) {
55 m=0; n=INVALID; k=0; lda=1; ldb=1; ldc=1;
56 printf("Checking if F77_dgemm fails on parameter 4\n");
57 F77_dgemm( "N", "T", &m, &n, &k,
58 &ALPHA, A, &lda, B, &ldb, &BETA, C, &ldc );
59 }
60 if (info==2) {
61 printf("Checking if F77_dgemm fails on parameter 8\n");
62 m=2; n=0; k=0; lda=1; ldb=1; ldc=2;
63 F77_dgemm( "N", "N" , &m, &n, &k,
64 &ALPHA, A, &lda, B, &ldb, &BETA, C, &ldc );
65 }
66 if (info==3) {
67 printf("Checking if F77_dgemm fails on parameter 10\n");
68 m=0; n=0; k=2; lda=1; ldb=1; ldc=1;
69 F77_dgemm( "N", "N" , &m, &n, &k,
70 &ALPHA, A, &lda, B, &ldb, &BETA, C, &ldc );
71 }
72 }
73
74 return 0;
75}
@ CblasNoTrans
Definition cblas.h:40
@ CblasTrans
Definition cblas.h:40
@ CblasRowMajor
Definition cblas.h:39
void cblas_dgemm_64(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, CBLAS_TRANSPOSE TransB, const int64_t M, const int64_t N, const int64_t K, const double alpha, const double *A, const int64_t lda, const double *B, const int64_t ldb, const double beta, double *C, const int64_t ldc)
int main()
#define INVALID
#define F77_dgemm(...)
Definition cblas_f77.h:405