Skip to content

Conversation

@vtjnash
Copy link
Contributor

@vtjnash vtjnash commented Dec 23, 2025

REFNAME was defined as a preprocessor macro (-DREFNAME=$(*F)f$(BU)) but
appears to have never been consumed by any source code. The SANITY_CHECK
feature uses common_reference.h which has its own independent mechanism
via BLASFUNC_REF macros with hardcoded REF_BU=f.

For context, REFNAME was imported with GotoBLAS2 in 2011 but became dead
code when the unit test framework added common_reference.h with its own
naming scheme. The CMake version also had a broken $(*F) reference that
could never work, but this was also moot since the macro was unused.

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 4.5 noreply@anthropic.com

REFNAME was defined as a preprocessor macro (-DREFNAME=$(*F)f$(BU)) but
appears to have never been consumed by any source code. The SANITY_CHECK
feature uses common_reference.h which has its own independent mechanism
via BLASFUNC_REF macros with hardcoded REF_BU=f.

For context, REFNAME was imported with GotoBLAS2 in 2011 but became dead
code when the unit test framework added common_reference.h with its own
naming scheme. The CMake version also had a broken $(*F) reference that
could never work, but this was also moot since the macro was unused.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@martin-frbg
Copy link
Collaborator

pretty sure the entirevsanity_check is dead code from gotoblas

@vtjnash
Copy link
Contributor Author

vtjnash commented Dec 23, 2025

It enables building the code in reference/ and adding those to the common.h file, so it would be a functional change to delete it, but does seem unlikely to be used now

@martin-frbg
Copy link
Collaborator

martin-frbg commented Dec 23, 2025

It may or may not build it ("it" being a <=2010 version of the Reference BLAS), but the code to run a calculation with both implementations and compare the results was never implemented. Kazushige Goto put several such empty hooks and dead ends into the initial GotoBLAS and never got around to implementing them - but it isn't worthwile to throw them out.
The separate BLAS-Tester project - adapted from the ATLAS testsuite - serves mostly the same purpose - just in a systematic way rather than tracing a specific user-specified sequence of calls.

@vtjnash
Copy link
Contributor Author

vtjnash commented Dec 24, 2025

Reducing/removing broken options that can result in broken configs seems meaningful to me. If you want to merge or close this, I can make another PR that deletes all of the dead code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants