Skip to content

Commit

Permalink
Implemented [cz]symv_(), [cz]syr_(), [cz]rot_(). (#778)
Browse files Browse the repository at this point in the history
Details:
- Expanded existing BLAS compatibility APIs to provide interfaces to
  [cz]symv_(), [cz]syr_(). This was easy since those operations were
  already implemented natively in BLIS; the APIs were previously
  omitted only because they were not formally part of the BLAS.
- Implemented [cz]rot_() by feeding code from LAPACK 3.11 through
  f2c.
- Thanks to James Foster for pointing out that LAPACK contains these
  additional symbols, which prompted these additions, as well as for
  testing the [cz]rot_() functions from Julia's test infrastructure.
- CREDITS file update.
  • Loading branch information
fgvanzee authored Sep 28, 2023
1 parent 6f41220 commit 37ca4fd
Show file tree
Hide file tree
Showing 11 changed files with 1,267 additions and 12 deletions.
1 change: 1 addition & 0 deletions CREDITS
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ but many others have contributed code, ideas, and feedback, including
Victor Eijkhout @VictorEijkhout (Texas Advanced Computing Center)
Evgeny Epifanovsky @epifanovsky (Q-Chem)
Isuru Fernando @isuruf
James Foster @jd-foster (CSIRO)
Roman Gareev @gareevroman
Richard Goldschmidt @SuperFluffy
Chris Goodyer
Expand Down
6 changes: 3 additions & 3 deletions frame/compat/bla_symv.c
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@
//
// Define BLAS-to-BLIS interfaces.
//
#undef GENTFUNCRO
#define GENTFUNCRO( ftype, ch, blasname, blisname ) \
#undef GENTFUNC
#define GENTFUNC( ftype, ch, blasname, blisname ) \
\
void PASTEF77(ch,blasname) \
( \
Expand Down Expand Up @@ -110,6 +110,6 @@ void PASTEF77(ch,blasname) \
}

#ifdef BLIS_ENABLE_BLAS
INSERT_GENTFUNCRO_BLAS( symv, symv )
INSERT_GENTFUNC_BLAS( symv, symv )
#endif

6 changes: 3 additions & 3 deletions frame/compat/bla_symv.h
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,8 @@
//
// Prototype BLAS-to-BLIS interfaces.
//
#undef GENTPROTRO
#define GENTPROTRO( ftype, ch, blasname ) \
#undef GENTPROT
#define GENTPROT( ftype, ch, blasname ) \
\
BLIS_EXPORT_BLAS void PASTEF77(ch,blasname) \
( \
Expand All @@ -52,7 +52,7 @@ BLIS_EXPORT_BLAS void PASTEF77(ch,blasname) \
);

#ifdef BLIS_ENABLE_BLAS
INSERT_GENTPROTRO_BLAS( symv )
INSERT_GENTPROT_BLAS( symv )
#endif

#endif
Expand Down
6 changes: 3 additions & 3 deletions frame/compat/bla_syr.c
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@
//
// Define BLAS-to-BLIS interfaces.
//
#undef GENTFUNCRO
#define GENTFUNCRO( ftype, ch, blasname, blisname ) \
#undef GENTFUNC
#define GENTFUNC( ftype, ch, blasname, blisname ) \
\
void PASTEF77(ch,blasname) \
( \
Expand Down Expand Up @@ -101,6 +101,6 @@ void PASTEF77(ch,blasname) \
}

#ifdef BLIS_ENABLE_BLAS
INSERT_GENTFUNCRO_BLAS( syr, syr )
INSERT_GENTFUNC_BLAS( syr, syr )
#endif

6 changes: 3 additions & 3 deletions frame/compat/bla_syr.h
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,8 @@
//
// Prototype BLAS-to-BLIS interfaces.
//
#undef GENTPROTRO
#define GENTPROTRO( ftype, ch, blasname ) \
#undef GENTPROT
#define GENTPROT( ftype, ch, blasname ) \
\
BLIS_EXPORT_BLAS void PASTEF77(ch,blasname) \
( \
Expand All @@ -50,7 +50,7 @@ BLIS_EXPORT_BLAS void PASTEF77(ch,blasname) \
);

#ifdef BLIS_ENABLE_BLAS
INSERT_GENTPROTRO_BLAS( syr )
INSERT_GENTPROT_BLAS( syr )
#endif

#endif
Expand Down
Loading

0 comments on commit 37ca4fd

Please sign in to comment.