-static inline uns
-find_match(uns list_id, hash_ptr_t *hash_tab, struct hash_record *hash_rec, uns hash, byte *string, byte *string_end, byte **best_ptr)
- /* We heavily rely on gcc optimisations (e.g. list_id is a constant hence
- * some branches of the code will be pruned).
- *
- * hash_tab[hash] points to the 1st record of the link-list of strings with the
- * same hash. The records are statically stored in circular array hash_rec
- * (with 1st entry unused), and the pointers are just 16-bit indices. In one
- * array, we store 2 independent link-lists: with 3 and 4 hashed characters.
- *
- * Updates are performed more often than searches, so they are lazy: we only
- * add new records in front of link-lists and never delete them. By reusing
- * an already allocated space in the circular array we necessarily modify
- * records that are already pointed at in the middle of some link-list. To
- * prevent confusion, this function checks 2 invariants: the strings in a
- * collision chain are ordered, and the hash of the 1st record in the chain
- * must match. */
+static inline byte *
+locate_string(byte *string, uns record_id, uns head)
+ /* The strings are recorded into the hash-table regularly, hence there is no
+ * need to store the pointer there. */