New user self-registration is disabled due to spam. Please email eigen-core-team @ if you need an account.
Before reporting a bug, please make sure that your Eigen version is up-to-date!
Bug 788 - Improved the sanity checks done by the BLAS API
Summary: Improved the sanity checks done by the BLAS API
Status: NEW
Alias: None
Product: Eigen
Classification: Unclassified
Component: Core - general (show other bugs)
Version: 3.2
Hardware: All All
: Normal Unknown
Assignee: Nobody
Depends on:
Reported: 2014-04-07 23:02 UTC by Benoit Steiner
Modified: 2014-04-08 00:31 UTC (History)
3 users (show)


Description Benoit Steiner 2014-04-07 23:02:34 UTC
The patch at (courtesy of Sameer Agarwal) improves the error checking in complex level3 blas routines:
  * zsyrk, csyrk, zsyr2k, csyr2k were incorrectly handling Adjoint as a valid operation. This is because the OP macro that interprets operations does not differentiate between operations that support the adjoint and the ones that don't. To fix this a new macro REALOP was introduced.
  * zher2k and cher2k implementation had a typo where LDB was referred to as LDA.
Comment 1 Christoph Hertzberg 2014-04-08 00:31:21 UTC
Patch looks generally good.

Maybe it would be better to define OP depending on IS_COMPLEX, instead of defining REAL_OP?
I don't know about the standard BLAS interface, but wouldn't it be ok to interpret adjoint as equivalent to transpose for non-complex types?

Btw: Instead of linking to a commit where you add a patch to your repository, you could simplify things a lot for us, if you either make a pull-request from a commit of the changes to your repository, or by attaching the actual patch. See here about patches:

Note You need to log in before you can comment on or make changes to this bug.