177 Commits

Author SHA1 Message Date
Evgenii Kliuchnikov
4b0f27b6f9 pick changes from Alpine patch
PiperOrigin-RevId: 816164347
2025-10-07 05:39:06 -07:00
Evgenii Kliuchnikov
1e4425a372 pick changes from Debian patch
PiperOrigin-RevId: 816157554
2025-10-07 05:16:20 -07:00
Evgenii Kliuchnikov
34e43eb020 fix typos
PiperOrigin-RevId: 815676548
2025-10-06 05:16:07 -07:00
Evgenii Kliuchnikov
0e7ea31e6b add alternative unaligned memory access for MIPS
PiperOrigin-RevId: 815662268
2025-10-06 04:26:03 -07:00
Evgenii Kliuchnikov
da2e091eb7 prepare for v1.2.0.rc1
PiperOrigin-RevId: 815650799
2025-10-06 03:48:49 -07:00
Evgenii Kliuchnikov
54481d4ebe use builtin bswap when available
PiperOrigin-RevId: 813849285
2025-10-01 11:56:09 -07:00
Evgenii Kliuchnikov
0bef8a6936 clarify that prepared dictionaries are "lean"
PiperOrigin-RevId: 811236534
2025-09-25 01:27:28 -07:00
Evgenii Kliuchnikov
20ed1374ff add decoder static init
PiperOrigin-RevId: 802957201
2025-09-04 03:58:47 -07:00
Evgenii Kliuchnikov
310f2119cf pull common static init header
PiperOrigin-RevId: 801763621
2025-09-01 04:46:12 -07:00
Evgenii Kliuchnikov
30c7d2f97d split prefix.h to .h/.cc/_inc.h
PiperOrigin-RevId: 801742168
2025-09-01 03:24:08 -07:00
Evgenii Kliuchnikov
25190700e2 use BROTLI_COLD in enc
PiperOrigin-RevId: 800516878
2025-08-28 10:17:30 -07:00
Evgenii Kliuchnikov
cb29dec4ed Introduce BROTLI_COLD
PiperOrigin-RevId: 799674933
2025-08-26 12:48:16 -07:00
Evgenii Kliuchnikov
643b22949d AI ate my code
PiperOrigin-RevId: 799658697
2025-08-26 12:03:48 -07:00
Evgenii Kliuchnikov
e7b0c08b51 move bulky generated constants out of main code
PiperOrigin-RevId: 799083333
2025-08-25 05:36:04 -07:00
Evgenii Kliuchnikov
9a4ba5932b internal change
PiperOrigin-RevId: 795452145
2025-08-15 06:18:41 -07:00
Evgenii Kliuchnikov
3cc6172f58 uninline ShannonEntropy/BitsEntropy
PiperOrigin-RevId: 794966726
2025-08-14 03:50:40 -07:00
Evgenii Kliuchnikov
103b25fb1e explicitly specify model for relocatable variables
PiperOrigin-RevId: 794473371
2025-08-13 02:11:12 -07:00
Evgenii Kliuchnikov
7b345944d6 adjust BROTLI_TEST effects
PiperOrigin-RevId: 793535397
2025-08-11 01:28:09 -07:00
Evgenii Kliuchnikov
6a4c96b110 more portable emergency exit
PiperOrigin-RevId: 792046166
2025-08-07 01:31:31 -07:00
Evgenii Kliuchnikov
29e040b8cb use static init to reduce encoder library size
PiperOrigin-RevId: 791661871
2025-08-06 06:18:01 -07:00
Evgenii Kliuchnikov
bf6231d685 Introduce static init
PiperOrigin-RevId: 791228365
2025-08-06 06:17:48 -07:00
Evgenii Kliuchnikov
8a7201c602 fix some includes
PiperOrigin-RevId: 791124445
2025-08-05 02:49:40 -07:00
Evgenii Kliuchnikov
12203bb586 Extract Hash14/15 to hash_base
PiperOrigin-RevId: 791061237
2025-08-04 23:30:28 -07:00
Evgenii Kliuchnikov
172fe58fab Forward imports in types.h
PiperOrigin-RevId: 790683957
2025-08-04 04:03:20 -07:00
Evgenii Kliuchnikov
a47d747506 Roll back:
Enable shared_dictionary for quality 3 and 4.

PiperOrigin-RevId: 781976993
2025-07-11 07:39:05 -07:00
Brotli
42c5139b80 Enable shared_dictionary for quality 3 and 4.
PiperOrigin-RevId: 780946946
2025-07-09 02:34:01 -07:00
Brotli
434b582d49 Fix compilation errors when BROTLI_DEBUG is defined.
PiperOrigin-RevId: 777494216
2025-06-30 03:32:03 -07:00
Robin Watts
cecc0acc0b Fix ISO C build breakage. (#1255)
ISO C prohibits inline declarations of variables. Move the
declaration to the start of the block.

Co-authored-by: Eugene Kliuchnikov <eustas.ru@gmail.com>
2025-05-27 09:59:17 +02:00
Andreas Deininger
93d0ac53aa Fix typos (#1242)
Co-authored-by: Eugene Kliuchnikov <eustas.ru@gmail.com>
2025-05-27 09:47:01 +02:00
Evgenii Kliuchnikov
440e03642b Another nullptr-arithmetics clamer
PiperOrigin-RevId: 721741817
2025-01-31 05:43:09 -08:00
Evgenii Kliuchnikov
a1e3ab25ce Fix (speculative) nullptr arithmetic
PiperOrigin-RevId: 721739274
2025-01-31 05:34:24 -08:00
Evgenii Kliuchnikov
95b81fcc29 Partially pick https://github.com/google/brotli/pull/1232
PiperOrigin-RevId: 712791222
2025-01-06 23:52:23 -08:00
Copybara-Service
2b6efcbdcc Merge pull request #1204 from heshpdx:master
PiperOrigin-RevId: 697922880
2024-11-19 01:42:21 -08:00
Mahesh Madhav
8c6d25f7f8 Update c/enc/encode.c
Co-authored-by: Eugene Kliuchnikov <eustas@google.com>
2024-11-19 09:52:16 +01:00
Mahesh Madhav
782aadd0ff Apply suggestions from code review
Co-authored-by: Eugene Kliuchnikov <eustas@google.com>
2024-11-19 09:52:16 +01:00
Mahesh Madhav
1054ecc262 Add static variables as per code review comments. 2024-11-19 09:52:16 +01:00
Mahesh Madhav
cec846f88e Update c/enc/block_splitter_inc.h
Added a digit of precision
2024-11-19 09:52:16 +01:00
Mahesh Madhav
cefec3ce9d Reduce fdiv's into fmul's
Provides small speedup on microarchitectures where the floating
point divide is slower than the floating point multiply.
2024-11-19 09:52:16 +01:00
Jeremy Koritzinsky
aa54821999 Fix C4224 warnings when building with MSVC 2024-11-12 16:50:52 +01:00
Ilya Tokar
664952333f Make Brotli decompression faster
Makes it ~8% faster on my skylake desktop.

PiperOrigin-RevId: 689499172
2024-10-24 13:36:55 -07:00
Ilya Tokar
350100a5bb Add BrotliCopyPreloadedSymbols function.
Add a single trivial use to avoid complier warning.

PiperOrigin-RevId: 676435629
2024-09-19 09:02:34 -07:00
Brotli
39bcecf455 Fix hasher resolution for long windows.
PiperOrigin-RevId: 652545288
2024-07-15 11:27:36 -07:00
Brotli
a528bce9f6 Hoist the static bounds check out of the combined if check.
PiperOrigin-RevId: 639054702
2024-05-31 09:11:23 -07:00
Brotli
fe754f3459 Use a hash table header and SIMD to speed up hash table operations (similar to [Swiss Tables](https://abseil.io/about/design/swisstables)).
PiperOrigin-RevId: 638686412
2024-05-30 09:51:43 -07:00
Brotli
04388304a6 Use a hash table header and SIMD to speed up hash table operations (similar to [Swiss Tables](https://abseil.io/about/design/swisstables)).
PiperOrigin-RevId: 632238409
2024-05-09 12:42:42 -07:00
Brotli
bb809ac908 Use a hash table header and SIMD to speed up hash table operations (similar to [Swiss Tables](https://abseil.io/about/design/swisstables)).
PiperOrigin-RevId: 631982664
2024-05-08 17:59:58 -07:00
Brotli
d01a4caaa8 Internal change
PiperOrigin-RevId: 626960053
2024-04-22 02:07:25 -07:00
Brotli
1b3a5ccb6e Prefetch the backreference hashtable bucket.
Place the prefetch before the last distance checks, to give the prefetch enough time to work.

PiperOrigin-RevId: 626228820
2024-04-18 20:00:02 -07:00
Evgenii Kliuchnikov
443af10a80 add (assumption) check
PiperOrigin-RevId: 625632989
2024-04-17 04:10:04 -07:00
Evgenii Kliuchnikov
c1c76e993f Don't check cur_ix_masked against ring_buffer_mask.
`cur_ix_masked` isn't changing from iteration to iteration, and `max_length` ensures we never find a match long enough to walk off the ring buffer.

PiperOrigin-RevId: 624701948
2024-04-14 06:36:02 -07:00