diff --git a/doc/specs/stdlib_hash_procedures.md b/doc/specs/stdlib_hash_procedures.md index 25c6c6036..1690538ed 100755 --- a/doc/specs/stdlib_hash_procedures.md +++ b/doc/specs/stdlib_hash_procedures.md @@ -1623,7 +1623,7 @@ various hash functions. The other is a comparison of the outputs of the Fortran hash functions, with the outputs of the C and C++ hash procedures that are the inspiration for the Fortran hash functions. -In the `src/test/hash_functions` subdirectory, the Fortran Standard +In the `src/test/hash_functions_perf` subdirectory, the Fortran Standard Library provides two performance test codes for the hash functions of `stdlib_hash_32bit` and `stdlib_hash_64bit`, `test_32_bit_hash_performance` and @@ -1728,20 +1728,16 @@ severely impact the performance of `nmhash32`, `nmhash32x`, `water_hash`, `pengy_hash`, and `spooky_hash` relative to `fnv_1_hash` and `fnv_1a_hash`. -In the `src/test/hash_functions/validation` subdirectory, the Fortran -Standard Library implements three executables to test the validity of -the Fortran codes against the original C and C++ codes. The three -executables must be compiled manually using the makefile -`Makefile.validation`, and the compiler suite used must be -GCC's. The first executable, `generate_key_array` is -based on Fortran code, and generates a random sequence of 2048 -integers of kind `INT8`, and stores that sequence in the binary file -`key_array.bin`. The second executable, `generate_hash_arrays`, reads -the values in `key_array.bin`, and, for each complicated hash -procedure generates a corresponding binary file containing 2049 hash -values generated from the values in `key_array.bin`. The third -executable, `hash_validity_test`, reads the binary files and for each -complicated hash procedure compares the contents of the binary file +In the `src/test/hash_functions` subdirectory, the Fortran +Standard Library contains codes to test the validity of +the Fortran codes against the original C and C++ codes. It consists of one +executable `test_hash_functions` that +1) generates a random sequence of 2048 +integers of kind `int8`, and stores that sequence in the binary file +`key_array.bin`; +2) reads the values in `key_array.bin`, and, for each complicated C/C++-coded +hash procedure, generates a corresponding binary file containing 2049 hash +values generated from the values in `key_array.bin`., and +3) reads the binary files, and, for each complicated C/C++-coded hash procedure, compares the contents of the binary file with the results of calculating hash values using the corresponding -Fortran hash procedure on the same keys. These executables must be run -manually in the same order. +Fortran hash procedure on the same keys. diff --git a/src/tests/hash_functions/README.md b/src/tests/hash_functions/README.md index 5cf2550e3..57ca44177 100644 --- a/src/tests/hash_functions/README.md +++ b/src/tests/hash_functions/README.md @@ -1,4 +1,4 @@ -The validation directory contains code to validate the Fortran hash functions against the original C/C++ codes. It consists of one executable `test_hash_functions` that: +The hash_functions directory contains code to validate the Fortran hash functions against the original C/C++ codes. It consists of one executable `test_hash_functions` that: * creates a file containing 2048 random 8 bit integers using the subroutine `generate_key_array`.