Add a portable XERBLA handler API#5904
Conversation
|
While this looks like a very interesting addition, it still bothers me that it appears to be "only" the utest_ext job that fails to bind the matching xerbla, while the regular BLAS/CBLAS tests appear to manage just fine. |
|
Good point. The regular BLAS/CBLAS tests had the same problem, but their failures were not propagated correctly. I have prepared a fix and will push it shortly. |
|
I've pushed changes addressing your concern. |
|
Great, thank you very much. I guess it might make sense to upstream these changes to Reference-LAPACK eventually |
|
Thanks for merging! I'll look into it. |
That could be good, and it would probably make more libraries implement the functionality. Right now I think only MKL and now OpenBLAS are the only two libraries that implement an XERBLA override. (Not that you merged this, I'll add a method into the Julia LBT muxing library to support this as well). |
After #5899 corrected the CTest registration, the Windows ARM64 shared-library job exposed failures in the
xerbla_*extension tests: calls originating in the OpenBLAS DLL did not reach the test executable'sxerblaoverride.#5901 works around this Windows DLL symbol-resolution limitation by switching the CI job to a static build. This PR instead adds an explicit XERBLA handler API for shared-library users and tests, and prevents BLAS and CBLAS error-exit failures from passing silently.
Changes
openblas_set_xerbla, with handler replacement andNULLreset support.