| 1 | /* insert_string_c -- insert_string variant for c |
| 2 | * |
| 3 | * Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler |
| 4 | * For conditions of distribution and use, see copyright notice in zlib.h |
| 5 | * |
| 6 | */ |
| 7 | |
| 8 | #include "zbuild.h" |
| 9 | #include "deflate.h" |
| 10 | |
| 11 | /* =========================================================================== |
| 12 | * Update a hash value with the given input byte |
| 13 | * IN assertion: all calls to to UPDATE_HASH are made with consecutive |
| 14 | * input characters, so that a running hash key can be computed from the |
| 15 | * previous key instead of complete recalculation each time. |
| 16 | */ |
| 17 | #define HASH_SLIDE 16 // Number of bits to slide hash |
| 18 | |
| 19 | #define UPDATE_HASH(s, h, val) \ |
| 20 | h = ((val * 2654435761U) >> HASH_SLIDE); |
| 21 | |
| 22 | #define INSERT_STRING insert_string_c |
| 23 | #define QUICK_INSERT_STRING quick_insert_string_c |
| 24 | |
| 25 | #include "insert_string_tpl.h" |
| 26 | |