Enable shared_dictionary for quality 3 and 4. PiperOrigin-RevId: 843477953
diff --git a/c/enc/backward_references.c b/c/enc/backward_references.c index 5d1c0ed..b48dd85 100644 --- a/c/enc/backward_references.c +++ b/c/enc/backward_references.c
@@ -131,6 +131,14 @@ #define PREFIX() D #define ENABLE_COMPOUND_DICTIONARY 1 +#define HASHER() H3 +/* NOLINTNEXTLINE(build/include) */ +#include "backward_references_inc.h" +#undef HASHER +#define HASHER() H4 +/* NOLINTNEXTLINE(build/include) */ +#include "backward_references_inc.h" +#undef HASHER #define HASHER() H5 /* NOLINTNEXTLINE(build/include) */ #include "backward_references_inc.h" @@ -192,6 +200,8 @@ literal_context_lut, params, hasher, dist_cache, \ last_insert_len, commands, num_commands, num_literals); \ return; + CASE_(3) + CASE_(4) CASE_(5) CASE_(6) #if defined(BROTLI_MAX_SIMD_QUALITY)
diff --git a/c/enc/hash_longest_match_quickly_inc.h b/c/enc/hash_longest_match_quickly_inc.h index 9db75cc..12fdb44 100644 --- a/c/enc/hash_longest_match_quickly_inc.h +++ b/c/enc/hash_longest_match_quickly_inc.h
@@ -168,7 +168,7 @@ BROTLI_DCHECK(cur_ix_masked + max_length <= ring_buffer_mask + 1); out->len_code_delta = 0; - if (prev_ix < cur_ix) { + if (prev_ix < cur_ix && cached_backward <= max_backward) { prev_ix &= (uint32_t)ring_buffer_mask; if (compare_char == data[prev_ix + best_len]) { const size_t len = FindMatchLengthWithLimit(