diff --git a/CMakeLists.txt b/CMakeLists.txt index 75845b4d..75f2744d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -761,6 +761,7 @@ SET(exectargets ${exectargets} SMHasher) if(NOT (CMAKE_CROSSCOMPILING)) enable_testing() + add_test(List SMHasher --list) add_test(VerifyAll SMHasher --test=VerifyAll) add_test(Sanity SMHasher --test=Sanity) add_test(Speed SMHasher --test=Speed) diff --git a/Hashes.cpp b/Hashes.cpp index dc78a43c..d3c0d7f7 100644 --- a/Hashes.cpp +++ b/Hashes.cpp @@ -1278,6 +1278,8 @@ void crc32c_pclmul_test(const void *key, int len, uint32_t seed, void *out) #endif #include "hash-garage/nmhash.h" +const char * const nmhash32_ver("nmhash32, le:" MACRO_ITOA(NMHASH_LITTLE_ENDIAN) ", vector:" MACRO_ITOA(NMH_VECTOR) ", align:" MACRO_ITOA(NMH_ACC_ALIGN)); +const char * const nmhash32x_ver("nmhash32x, le:" MACRO_ITOA(NMHASH_LITTLE_ENDIAN) ", vector:" MACRO_ITOA(NMH_VECTOR) ", align:" MACRO_ITOA(NMH_ACC_ALIGN)); // objsize: 4202f0-420c7d: 2445 void nmhash32_test ( const void * key, int len, uint32_t seed, void * out ) { *(uint32_t*)out = NMHASH32 (key, (const size_t) len, seed); diff --git a/Hashes.h b/Hashes.h index a9060006..4fe9839b 100644 --- a/Hashes.h +++ b/Hashes.h @@ -1313,6 +1313,8 @@ extern "C" { void asconhashv12_256 ( const void * key, int len, uint32_t seed, void * out ); } +extern const char * const nmhash32_ver; +extern const char * const nmhash32x_ver; void nmhash32_test ( const void * key, int len, uint32_t seed, void * out ); void nmhash32x_test ( const void * key, int len, uint32_t seed, void * out ); diff --git a/Types.h b/Types.h index 3cdae30b..46d6de8c 100644 --- a/Types.h +++ b/Types.h @@ -13,6 +13,9 @@ using namespace std; #include +#define MACRO_ITOA_(x) #x +#define MACRO_ITOA(x) MACRO_ITOA_(x) + //----------------------------------------------------------------------------- // If the optimizer detects that a value in a speed test is constant or unused, // the optimizer may remove references to it or otherwise create code that diff --git a/main.cpp b/main.cpp index 60ba9041..3e4979a0 100644 --- a/main.cpp +++ b/main.cpp @@ -758,8 +758,8 @@ HashInfo g_hashes[] = { rapidhash_test, 64, 0xAF404C4B, "rapidhash", "rapidhash v1", GOOD, {}}, { rapidhash_unrolled_test, 64, 0xAF404C4B, "rapidhash_unrolled", "rapidhash v1 - unrolled", GOOD, {}}, #endif -{ nmhash32_test, 32, 0x12A30553, "nmhash32", "nmhash32", GOOD, {}}, -{ nmhash32x_test, 32, 0xA8580227, "nmhash32x", "nmhash32x", GOOD, {}}, +{ nmhash32_test, 32, 0x12A30553, "nmhash32", nmhash32_ver, GOOD, {}}, +{ nmhash32x_test, 32, 0xA8580227, "nmhash32x", nmhash32x_ver, GOOD, {}}, #ifdef HAVE_KHASHV #ifdef __clang__ // also gcc 9.4 #define KHASHV32_VERIF 0xB69DF8EB