mirror of
https://github.com/amd/blis.git
synced 2026-05-11 01:30:00 +00:00
Fixed cpp macro parameter "ch" typo in bla_ger.c.
Details:
- Previously, the BLAS routine-generating macro in bla_ger.c was
incorrectly passing MKSTR(ch) into the _check() macro when it
should have been passing in the char that was available, chxy.
I've instead changed the name of the macro parameter from chxy
to ch. Similar change as made to bla_ger.h for consistency.
Thanks to Dave Love in helping track this down. (NOTE: This is
actually the root cause of the bug that was first patched by
increasing the length of the operation name strings passed into
xerbla_(), as defined by the constant BLIS_MAX_BLAS_FUNC_STR_LENGTH,
in 3d1a5a7. In theory, that change could be backed out now.)
- Applied aforementioned chxy->ch change to bla_dot.[ch], as well as
frame/compat/cblas/f77_sub/f77_dot_sub.[ch] (not because it needed
to happen, but for naming consistency).
- Reformatted function signatures/prototypes of CBLAS functions and
function calls to BLAS in frame/compat/cblas/f77_sub/*.c.
This commit is contained in:
@@ -39,9 +39,9 @@
|
|||||||
// Define BLAS-to-BLIS interfaces.
|
// Define BLAS-to-BLIS interfaces.
|
||||||
//
|
//
|
||||||
#undef GENTFUNCDOT
|
#undef GENTFUNCDOT
|
||||||
#define GENTFUNCDOT( ftype, chxy, chc, blis_conjx, blasname, blisname ) \
|
#define GENTFUNCDOT( ftype, ch, chc, blis_conjx, blasname, blisname ) \
|
||||||
\
|
\
|
||||||
ftype PASTEF772(chxy,blasname,chc) \
|
ftype PASTEF772(ch,blasname,chc) \
|
||||||
( \
|
( \
|
||||||
const f77_int* n, \
|
const f77_int* n, \
|
||||||
const ftype* x, const f77_int* incx, \
|
const ftype* x, const f77_int* incx, \
|
||||||
@@ -67,7 +67,7 @@ ftype PASTEF772(chxy,blasname,chc) \
|
|||||||
bli_convert_blas_incv( n0, (ftype*)y, *incy, y0, incy0 ); \
|
bli_convert_blas_incv( n0, (ftype*)y, *incy, y0, incy0 ); \
|
||||||
\
|
\
|
||||||
/* Call BLIS interface. */ \
|
/* Call BLIS interface. */ \
|
||||||
PASTEMAC(chxy,blisname) \
|
PASTEMAC(ch,blisname) \
|
||||||
( \
|
( \
|
||||||
blis_conjx, \
|
blis_conjx, \
|
||||||
BLIS_NO_CONJUGATE, \
|
BLIS_NO_CONJUGATE, \
|
||||||
|
|||||||
@@ -37,9 +37,9 @@
|
|||||||
// Prototype BLAS-to-BLIS interfaces.
|
// Prototype BLAS-to-BLIS interfaces.
|
||||||
//
|
//
|
||||||
#undef GENTPROTDOT
|
#undef GENTPROTDOT
|
||||||
#define GENTPROTDOT( ftype, chxy, chc, blasname ) \
|
#define GENTPROTDOT( ftype, ch, chc, blasname ) \
|
||||||
\
|
\
|
||||||
ftype PASTEF772(chxy,blasname,chc) \
|
ftype PASTEF772(ch,blasname,chc) \
|
||||||
( \
|
( \
|
||||||
const f77_int* n, \
|
const f77_int* n, \
|
||||||
const ftype* x, const f77_int* incx, \
|
const ftype* x, const f77_int* incx, \
|
||||||
|
|||||||
@@ -39,9 +39,9 @@
|
|||||||
// Define BLAS-to-BLIS interfaces.
|
// Define BLAS-to-BLIS interfaces.
|
||||||
//
|
//
|
||||||
#undef GENTFUNCDOT
|
#undef GENTFUNCDOT
|
||||||
#define GENTFUNCDOT( ftype, chxy, chc, blis_conjy, blasname, blisname ) \
|
#define GENTFUNCDOT( ftype, ch, chc, blis_conjy, blasname, blisname ) \
|
||||||
\
|
\
|
||||||
void PASTEF772(chxy,blasname,chc) \
|
void PASTEF772(ch,blasname,chc) \
|
||||||
( \
|
( \
|
||||||
const f77_int* m, \
|
const f77_int* m, \
|
||||||
const f77_int* n, \
|
const f77_int* n, \
|
||||||
@@ -87,7 +87,7 @@ void PASTEF772(chxy,blasname,chc) \
|
|||||||
cs_a = *lda; \
|
cs_a = *lda; \
|
||||||
\
|
\
|
||||||
/* Call BLIS interface. */ \
|
/* Call BLIS interface. */ \
|
||||||
PASTEMAC(chxy,blisname) \
|
PASTEMAC(ch,blisname) \
|
||||||
( \
|
( \
|
||||||
BLIS_NO_CONJUGATE, \
|
BLIS_NO_CONJUGATE, \
|
||||||
blis_conjy, \
|
blis_conjy, \
|
||||||
|
|||||||
@@ -42,14 +42,18 @@
|
|||||||
#undef GENTFUNC
|
#undef GENTFUNC
|
||||||
#define GENTFUNC( ftype_x, chx, blasname, blisname ) \
|
#define GENTFUNC( ftype_x, chx, blasname, blisname ) \
|
||||||
\
|
\
|
||||||
void PASTEF773(i,chx,blasname,sub)( \
|
void PASTEF773(i,chx,blasname,sub) \
|
||||||
const f77_int* n, \
|
( \
|
||||||
const ftype_x* x, const f77_int* incx, \
|
const f77_int* n, \
|
||||||
f77_int* rval \
|
const ftype_x* x, const f77_int* incx, \
|
||||||
) \
|
f77_int* rval \
|
||||||
|
) \
|
||||||
{ \
|
{ \
|
||||||
*rval = PASTEF772(i,chx,blasname)( n, \
|
*rval = PASTEF772(i,chx,blasname) \
|
||||||
x, incx ); \
|
( \
|
||||||
|
n, \
|
||||||
|
x, incx \
|
||||||
|
); \
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef BLIS_ENABLE_CBLAS
|
#ifdef BLIS_ENABLE_CBLAS
|
||||||
|
|||||||
@@ -39,11 +39,12 @@
|
|||||||
#undef GENTPROT
|
#undef GENTPROT
|
||||||
#define GENTPROT( ftype_x, chx, blasname ) \
|
#define GENTPROT( ftype_x, chx, blasname ) \
|
||||||
\
|
\
|
||||||
void PASTEF773(i,chx,blasname,sub)( \
|
void PASTEF773(i,chx,blasname,sub) \
|
||||||
const f77_int* n, \
|
( \
|
||||||
const ftype_x* x, const f77_int* incx, \
|
const f77_int* n, \
|
||||||
f77_int* rval \
|
const ftype_x* x, const f77_int* incx, \
|
||||||
);
|
f77_int* rval \
|
||||||
|
);
|
||||||
|
|
||||||
#ifdef BLIS_ENABLE_CBLAS
|
#ifdef BLIS_ENABLE_CBLAS
|
||||||
INSERT_GENTPROT_BLAS( amax )
|
INSERT_GENTPROT_BLAS( amax )
|
||||||
|
|||||||
@@ -42,14 +42,18 @@
|
|||||||
#undef GENTFUNCR2
|
#undef GENTFUNCR2
|
||||||
#define GENTFUNCR2( ftype_x, ftype_r, chx, chr, blasname, blisname ) \
|
#define GENTFUNCR2( ftype_x, ftype_r, chx, chr, blasname, blisname ) \
|
||||||
\
|
\
|
||||||
void PASTEF773(chr,chx,blasname,sub)( \
|
void PASTEF773(chr,chx,blasname,sub) \
|
||||||
const f77_int* n, \
|
( \
|
||||||
const ftype_x* x, const f77_int* incx, \
|
const f77_int* n, \
|
||||||
ftype_r* rval \
|
const ftype_x* x, const f77_int* incx, \
|
||||||
) \
|
ftype_r* rval \
|
||||||
|
) \
|
||||||
{ \
|
{ \
|
||||||
*rval = PASTEF772(chr,chx,blasname)( n, \
|
*rval = PASTEF772(chr,chx,blasname) \
|
||||||
x, incx ); \
|
( \
|
||||||
|
n, \
|
||||||
|
x, incx \
|
||||||
|
); \
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef BLIS_ENABLE_CBLAS
|
#ifdef BLIS_ENABLE_CBLAS
|
||||||
|
|||||||
@@ -39,11 +39,12 @@
|
|||||||
#undef GENTPROTR2
|
#undef GENTPROTR2
|
||||||
#define GENTPROTR2( ftype_x, ftype_r, chx, chr, blasname ) \
|
#define GENTPROTR2( ftype_x, ftype_r, chx, chr, blasname ) \
|
||||||
\
|
\
|
||||||
void PASTEF773(chr,chx,blasname,sub)( \
|
void PASTEF773(chr,chx,blasname,sub) \
|
||||||
const f77_int* n, \
|
( \
|
||||||
const ftype_x* x, const f77_int* incx, \
|
const f77_int* n, \
|
||||||
ftype_r* rval \
|
const ftype_x* x, const f77_int* incx, \
|
||||||
);
|
ftype_r* rval \
|
||||||
|
);
|
||||||
|
|
||||||
#ifdef BLIS_ENABLE_CBLAS
|
#ifdef BLIS_ENABLE_CBLAS
|
||||||
INSERT_GENTPROTR2_BLAS( asum )
|
INSERT_GENTPROTR2_BLAS( asum )
|
||||||
|
|||||||
@@ -40,18 +40,22 @@
|
|||||||
// Define CBLAS subrotine wrapper interfaces.
|
// Define CBLAS subrotine wrapper interfaces.
|
||||||
//
|
//
|
||||||
#undef GENTFUNCDOT
|
#undef GENTFUNCDOT
|
||||||
#define GENTFUNCDOT( ftype, chxy, chc, blis_conjx, blasname, blisname ) \
|
#define GENTFUNCDOT( ftype, ch, chc, blis_conjx, blasname, blisname ) \
|
||||||
\
|
\
|
||||||
void PASTEF773(chxy,blasname,chc,sub)( \
|
void PASTEF773(ch,blasname,chc,sub) \
|
||||||
const f77_int* n, \
|
( \
|
||||||
const ftype* x, const f77_int* incx, \
|
const f77_int* n, \
|
||||||
const ftype* y, const f77_int* incy, \
|
const ftype* x, const f77_int* incx, \
|
||||||
ftype* rval \
|
const ftype* y, const f77_int* incy, \
|
||||||
) \
|
ftype* rval \
|
||||||
|
) \
|
||||||
{ \
|
{ \
|
||||||
*rval = PASTEF772(chxy,blasname,chc)( n, \
|
*rval = PASTEF772(ch,blasname,chc) \
|
||||||
x, incx, \
|
( \
|
||||||
y, incy ); \
|
n, \
|
||||||
|
x, incx, \
|
||||||
|
y, incy \
|
||||||
|
); \
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef BLIS_ENABLE_CBLAS
|
#ifdef BLIS_ENABLE_CBLAS
|
||||||
@@ -62,29 +66,40 @@ INSERT_GENTFUNCDOT_BLAS( dot, NULL )
|
|||||||
|
|
||||||
// Input vectors stored in single precision, computed in double precision,
|
// Input vectors stored in single precision, computed in double precision,
|
||||||
// with result returned in single precision.
|
// with result returned in single precision.
|
||||||
void PASTEF772(sds,dot,sub)( const f77_int* n,
|
void PASTEF772(sds,dot,sub)
|
||||||
const float* sb,
|
(
|
||||||
const float* x, const f77_int* incx,
|
const f77_int* n,
|
||||||
const float* y, const f77_int* incy,
|
const float* sb,
|
||||||
float* rval
|
const float* x, const f77_int* incx,
|
||||||
)
|
const float* y, const f77_int* incy,
|
||||||
|
float* rval
|
||||||
|
)
|
||||||
{
|
{
|
||||||
*rval = *sb + PASTEF77(sds,dot)( n,
|
*rval = *sb + PASTEF77(sds,dot)
|
||||||
x, incx,
|
(
|
||||||
y, incy );
|
n,
|
||||||
|
sb,
|
||||||
|
x, incx,
|
||||||
|
y, incy
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Input vectors stored in single precision, computed in double precision,
|
// Input vectors stored in single precision, computed in double precision,
|
||||||
// with result returned in double precision.
|
// with result returned in double precision.
|
||||||
void PASTEF772(ds,dot,sub)( const f77_int* n,
|
void PASTEF772(ds,dot,sub)
|
||||||
const float* x, const f77_int* incx,
|
(
|
||||||
const float* y, const f77_int* incy,
|
const f77_int* n,
|
||||||
double* rval
|
const float* x, const f77_int* incx,
|
||||||
)
|
const float* y, const f77_int* incy,
|
||||||
|
double* rval
|
||||||
|
)
|
||||||
{
|
{
|
||||||
*rval = PASTEF77(ds,dot)( n,
|
*rval = PASTEF77(ds,dot)
|
||||||
x, incx,
|
(
|
||||||
y, incy );
|
n,
|
||||||
|
x, incx,
|
||||||
|
y, incy
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -37,14 +37,15 @@
|
|||||||
// Prototype CBLAS subroutine wrapper interfaces.
|
// Prototype CBLAS subroutine wrapper interfaces.
|
||||||
//
|
//
|
||||||
#undef GENTPROTDOT
|
#undef GENTPROTDOT
|
||||||
#define GENTPROTDOT( ftype, chxy, chc, blasname ) \
|
#define GENTPROTDOT( ftype, ch, chc, blasname ) \
|
||||||
\
|
\
|
||||||
void PASTEF773(chxy,blasname,chc,sub)( \
|
void PASTEF773(ch,blasname,chc,sub) \
|
||||||
const f77_int* n, \
|
( \
|
||||||
const ftype* x, const f77_int* incx, \
|
const f77_int* n, \
|
||||||
const ftype* y, const f77_int* incy, \
|
const ftype* x, const f77_int* incx, \
|
||||||
ftype* rval \
|
const ftype* y, const f77_int* incy, \
|
||||||
);
|
ftype* rval \
|
||||||
|
);
|
||||||
|
|
||||||
#ifdef BLIS_ENABLE_CBLAS
|
#ifdef BLIS_ENABLE_CBLAS
|
||||||
INSERT_GENTPROTDOT_BLAS( dot )
|
INSERT_GENTPROTDOT_BLAS( dot )
|
||||||
@@ -52,16 +53,20 @@ INSERT_GENTPROTDOT_BLAS( dot )
|
|||||||
|
|
||||||
// -- "Black sheep" dot product function prototypes --
|
// -- "Black sheep" dot product function prototypes --
|
||||||
|
|
||||||
void PASTEF772(sds,dot,sub)( const f77_int* n,
|
void PASTEF772(sds,dot,sub)
|
||||||
const float* sb,
|
(
|
||||||
const float* x, const f77_int* incx,
|
const f77_int* n,
|
||||||
const float* y, const f77_int* incy,
|
const float* sb,
|
||||||
float* rval
|
const float* x, const f77_int* incx,
|
||||||
);
|
const float* y, const f77_int* incy,
|
||||||
|
float* rval
|
||||||
|
);
|
||||||
|
|
||||||
void PASTEF772(ds,dot,sub)( const f77_int* n,
|
void PASTEF772(ds,dot,sub)
|
||||||
const float* x, const f77_int* incx,
|
(
|
||||||
const float* y, const f77_int* incy,
|
const f77_int* n,
|
||||||
double* rval
|
const float* x, const f77_int* incx,
|
||||||
);
|
const float* y, const f77_int* incy,
|
||||||
|
double* rval
|
||||||
|
);
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -42,14 +42,18 @@
|
|||||||
#undef GENTFUNCR2
|
#undef GENTFUNCR2
|
||||||
#define GENTFUNCR2( ftype_x, ftype_r, chx, chr, blasname, blisname ) \
|
#define GENTFUNCR2( ftype_x, ftype_r, chx, chr, blasname, blisname ) \
|
||||||
\
|
\
|
||||||
void PASTEF773(chr,chx,blasname,sub)( \
|
void PASTEF773(chr,chx,blasname,sub) \
|
||||||
const f77_int* n, \
|
( \
|
||||||
const ftype_x* x, const f77_int* incx, \
|
const f77_int* n, \
|
||||||
ftype_r* rval \
|
const ftype_x* x, const f77_int* incx, \
|
||||||
) \
|
ftype_r* rval \
|
||||||
|
) \
|
||||||
{ \
|
{ \
|
||||||
*rval = PASTEF772(chr,chx,blasname)( n, \
|
*rval = PASTEF772(chr,chx,blasname) \
|
||||||
x, incx ); \
|
( \
|
||||||
|
n, \
|
||||||
|
x, incx \
|
||||||
|
); \
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef BLIS_ENABLE_CBLAS
|
#ifdef BLIS_ENABLE_CBLAS
|
||||||
|
|||||||
@@ -39,11 +39,12 @@
|
|||||||
#undef GENTPROTR2
|
#undef GENTPROTR2
|
||||||
#define GENTPROTR2( ftype_x, ftype_r, chx, chr, blasname ) \
|
#define GENTPROTR2( ftype_x, ftype_r, chx, chr, blasname ) \
|
||||||
\
|
\
|
||||||
void PASTEF773(chr,chx,blasname,sub)( \
|
void PASTEF773(chr,chx,blasname,sub) \
|
||||||
const f77_int* n, \
|
( \
|
||||||
const ftype_x* x, const f77_int* incx, \
|
const f77_int* n, \
|
||||||
ftype_r* rval \
|
const ftype_x* x, const f77_int* incx, \
|
||||||
);
|
ftype_r* rval \
|
||||||
|
);
|
||||||
|
|
||||||
#ifdef BLIS_ENABLE_CBLAS
|
#ifdef BLIS_ENABLE_CBLAS
|
||||||
INSERT_GENTPROTR2_BLAS( nrm2 )
|
INSERT_GENTPROTR2_BLAS( nrm2 )
|
||||||
|
|||||||
Reference in New Issue
Block a user