make/tests/scripts/targets
Paolo Bonzini 4fd56724ad Use Jenkins hash.
This is about twice as fast as the current hash, and removes the
need for double hashing (improving locality of reference).  The
hash function is based on Bob Jenkins' design, slightly adapted
wherever Make needs to hash NUL-terminated strings.  The old hash
function is kept for case-insensitive hashing.

This saves 8.5% on QEMU's no-op build (from 12.87s to 11.78s).

* configure.ac: Check endianness.
* hash.c (rol32, jhash_mix, jhash_final, JHASH_INITVAL,
sum_get_unaligned_32, jhash): New.
* hash.h (STRING_HASH_1, STRING_N_HASH_1): Use jhash.
(STRING_HASH_2, STRING_N_HASH_2): Return a dummy value.
(STRING_N_COMPARE, return_STRING_N_COMPARE): Prefer memcmp to strncmp.
2017-11-11 10:08:30 -05:00
..
clean Portability changes for the test suite. 2016-12-26 09:01:59 -05:00
DEFAULT Convert all "`'" quotes to "''" per new GNU Coding Standard guidelines. 2012-03-04 00:24:20 +00:00
DELETE_ON_ERROR * job.c (child_error): Modify error message string. 2017-10-30 17:07:21 -04:00
FORCE Portability changes for the test suite. 2016-12-26 09:01:59 -05:00
INTERMEDIATE Use Jenkins hash. 2017-11-11 10:08:30 -05:00
ONESHELL Add test suite support to Windows 2017-06-04 18:37:20 -04:00
PHONY Portability changes for the test suite. 2016-12-26 09:01:59 -05:00
POSIX * job.c (child_error): Modify error message string. 2017-10-30 17:07:21 -04:00
SECONDARY Use Jenkins hash. 2017-11-11 10:08:30 -05:00
SILENT Portability changes for the test suite. 2016-12-26 09:01:59 -05:00