diff options
| author | Hans Kristian Rosbach <hk-git@circlestorm.org> | 2024-02-21 11:44:18 +0100 |
|---|---|---|
| committer | Hans Kristian Rosbach <hk-github@circlestorm.org> | 2024-02-23 13:34:10 +0100 |
| commit | 9953f12e21d3901d8158c59368715c1d7b01b0c6 (patch) | |
| tree | 0c0577eeff10c88fe870e92e919a598e384165ea /insert_string.c | |
| parent | ef2f8d528c0b76741536e7846a7cfc74315da267 (diff) | |
| download | Project-Tick-9953f12e21d3901d8158c59368715c1d7b01b0c6.tar.gz Project-Tick-9953f12e21d3901d8158c59368715c1d7b01b0c6.zip | |
Move update_hash(), insert_string() and quick_insert_string() out of functable
and remove SSE4.2 and ACLE optimizations. The functable overhead is higher
than the benefit from using optimized functions.
Diffstat (limited to 'insert_string.c')
| -rw-r--r-- | insert_string.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/insert_string.c b/insert_string.c new file mode 100644 index 0000000000..11a5b97ffe --- /dev/null +++ b/insert_string.c @@ -0,0 +1,21 @@ +/* insert_string.c -- insert_string integer hash variant + * + * Copyright (C) 1995-2024 Jean-loup Gailly and Mark Adler + * For conditions of distribution and use, see copyright notice in zlib.h + * + */ + +#include "zbuild.h" +#include "deflate.h" + +#define HASH_SLIDE 16 + +#define HASH_CALC(h, val) h = ((val * 2654435761U) >> HASH_SLIDE); +#define HASH_CALC_VAR h +#define HASH_CALC_VAR_INIT uint32_t h = 0 + +#define UPDATE_HASH update_hash +#define INSERT_STRING insert_string +#define QUICK_INSERT_STRING quick_insert_string + +#include "insert_string_tpl.h" |
