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
Brotli
709c4672d4
Fix minor syntax issues.
...
Missing semicolons.
Move checks below variable declarations for c89.
PiperOrigin-RevId: 624199887
2024-04-12 09:16:00 -07:00
Brotli
a76d96e730
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: 624162764
2024-04-12 06:50:51 -07:00
Brotli
a813a6a1e4
Update the H5
hasher to use the H6
's FN(STORE)
.
...
PiperOrigin-RevId: 623885589
2024-04-11 11:23:47 -07:00
Brotli
f964a1e8ac
Internal change
...
PiperOrigin-RevId: 623073126
2024-04-09 00:19:11 -07:00
Brotli
cdbe7fc739
Internal change
...
PiperOrigin-RevId: 622802698
2024-04-08 04:30:44 -07:00
Brotli
9351fa7ffb
Compare 4 bytes when checking if a longer match is possible.
...
Loading and comparing 4 bytes is ~as fast as 1 byte, but allows us to avoid more full match length calculation.
PiperOrigin-RevId: 617556847
2024-03-20 10:30:00 -07:00
Brotli
9717649c31
Use BROTLI_MAX_STATIC_CONTEXTS instead of magic constants in encode.c
...
PiperOrigin-RevId: 615341475
2024-03-13 02:47:52 -07:00
Evgenii Kliuchnikov
d5e697b3c7
remove dependency on os-specific defines
...
PiperOrigin-RevId: 600449944
2024-01-22 07:24:41 -08:00
Evgenii Kliuchnikov
3396c67fea
add brcat alias + flag to decompress concatenated streams
...
PiperOrigin-RevId: 598652401
2024-01-15 12:49:56 -08:00
Evgenii Kliuchnikov
033940f97c
add comment (fingerprint) CLI feature
...
PiperOrigin-RevId: 597489910
2024-01-11 02:04:37 -08:00
Evgenii Kliuchnikov
6b6adb7ae8
fix build for Microsoft-designed ARM64 ABI
...
PiperOrigin-RevId: 595334901
2024-01-03 02:01:23 -08:00
Evgenii Kliuchnikov
9b83be233e
fix wording
...
PiperOrigin-RevId: 576788685
2023-10-26 02:03:20 -07:00
Evgenii Kliuchnikov
e7313b0c4e
tune memory manager for BROTLI_EXPERIMENTAL
...
PiperOrigin-RevId: 560703386
2023-08-28 07:20:49 -07:00
Evgenii Kliuchnikov
c1bd196833
comb HAVE_UTIMENSAT definition
...
PiperOrigin-RevId: 560011681
2023-08-25 01:07:12 -07:00
Evgenii Kliuchnikov
2a5a088b03
more tuning for BROTLI_EXPERIMENTAL + clean-on-oom
...
PiperOrigin-RevId: 558771745
2023-08-21 06:36:24 -07:00
Evgenii Kliuchnikov
feb6d8bc80
prepare for 1.1.0rc
...
PiperOrigin-RevId: 558736892
2023-08-21 03:35:01 -07:00
Evgenii Kliuchnikov
3ebb2d30ab
Move serialized dictionary feature behind the flag.
...
BROTLI_SHARED_DICTIONARY_SERIALIZED enum value is a part of API,
but it should not be used (will cause failures).
Changing how serialized dictionaries work won't be considered as an API change, until this feature is enabled.
Enabling this feature in the future will be considered as a "compatible" change.
PiperOrigin-RevId: 558091676
2023-08-18 02:55:33 -07:00
Evgenii Kliuchnikov
0f2157cc5e
Update comment; fixes #1061
...
PiperOrigin-RevId: 557501089
2023-08-16 08:55:14 -07:00
Evgenii Kliuchnikov
8c7923045a
reduce amount of padding in decoder structs
...
PiperOrigin-RevId: 555101669
2023-08-09 02:48:53 -07:00
Evgenii Kliuchnikov
a560089843
speedup q5-9 on large files
...
PiperOrigin-RevId: 553440457
2023-08-03 04:58:52 -07:00
Evgenii Kliuchnikov
117b68b745
speedup encoder on q5-9 / 1MB+ files
...
PiperOrigin-RevId: 553087469
2023-08-02 03:05:57 -07:00
Evgenii Kliuchnikov
d639a81d35
add option to delete files that are not "compressed"
...
PiperOrigin-RevId: 552472135
2023-07-31 07:19:14 -07:00
Evgenii Kliuchnikov
27a9a80992
simplify CMake build
...
PiperOrigin-RevId: 552238545
2023-07-30 03:45:11 -07:00
Evgenii Kliuchnikov
779a49bfd6
bake in runtime constant
...
PiperOrigin-RevId: 549590409
2023-07-20 04:18:46 -07:00
Evgenii Kliuchnikov
c3dc7d039c
more careful bit-reader interruption
...
PiperOrigin-RevId: 548661043
2023-07-17 05:39:13 -07:00
Evgenii Kliuchnikov
2d0947f1ea
insert missing fuzz/WORKSPACE content
...
PiperOrigin-RevId: 546848285
2023-07-10 07:31:03 -07:00
Evgenii Kliuchnikov
2e6164d7b0
verbose error report in CLI
...
PiperOrigin-RevId: 546833411
2023-07-10 11:43:42 +00:00
Evgenii Kliuchnikov
70e7b1ae4a
simplify building of fuzzer
...
PiperOrigin-RevId: 545950923
2023-07-10 11:43:27 +00:00
Evgenii Kliuchnikov
6ee96e291d
Internal changes
...
PiperOrigin-RevId: 545262005
2023-07-04 07:55:25 +00:00
Evgenii Kliuchnikov
e252f1fc15
0.5-2.9% decoder speedup
...
PiperOrigin-RevId: 529412095
2023-07-04 07:55:16 +00:00
Evgenii Kliuchnikov
e1f5788fb0
Fix internal buffer reset
...
PiperOrigin-RevId: 524301253
2023-07-04 07:54:41 +00:00
Evgenii Kliuchnikov
e5dba91c38
Add BROTLI_ENABLE_DUMP build option
...
PiperOrigin-RevId: 520047051
2023-07-04 07:54:07 +00:00
Evgenii Kliuchnikov
f29c44ed38
Avoid nullptr with zero offset
...
PiperOrigin-RevId: 516808122
2023-07-04 07:53:51 +00:00
Evgenii Kliuchnikov
cb1ced3a25
speedup decoder by 0.2%-1.2%
...
PiperOrigin-RevId: 516754779
2023-07-04 07:53:42 +00:00
Evgenii Kliuchnikov
57c36a4f27
1.2-2.3% decoder speedup
...
PiperOrigin-RevId: 513524040
2023-07-04 07:53:33 +00:00
Evgenii Kliuchnikov
6db17c87f5
0.4-1.5% decoder speedup
...
PiperOrigin-RevId: 513248503
2023-07-04 07:53:20 +00:00
Catena cyber
bfa15d4046
fuzz: make target resist allocation failures ( #1023 )
...
So that fuzzing can go on with simulated allocation failures
2023-06-22 10:27:21 +02:00
Zhang Na
1d8452b783
Add loongarch64 support ( #1022 )
2023-06-20 09:44:23 +02:00
Evgenii Kliuchnikov
b2c86d1871
Decoder API: added API to attach metadata blocks callbacks
...
PiperOrigin-RevId: 505734532
2023-01-31 16:03:16 +00:00
Evgenii Kliuchnikov
04f294b18a
Fix emitting 1-byte long metadata block
...
PiperOrigin-RevId: 505484299
2023-01-30 09:10:28 +00:00
Brotli
1e61e972fb
speed up encoding by ~5 %
...
PiperOrigin-RevId: 505061835
2023-01-30 09:10:14 +00:00
Brotli
36533a866e
Internal change
...
PiperOrigin-RevId: 502401179
2023-01-17 13:51:00 +00:00
Aron Parker
71fe6cac06
Fix BrotliEncoderEstimatePeakMemoryUsage ( #1002 )
...
Fixes https://github.com/google/brotli/issues/1001
2023-01-07 22:01:47 +01:00
Eugene Kliuchnikov
0ea4603880
Fix MSVC warning ( #998 )
...
Fix #875
2023-01-04 12:10:29 +01:00
Eugene Kliuchnikov
509d4419bd
Copy ns time stat ( #992 )
2022-12-22 16:05:25 +01:00
Adrian Perez
641bec0e30
CMake: Allow using BUILD_SHARED_LIBS to choose static/shared libs ( #655 )
...
By convention projects using CMake which can build either static or
shared libraries use a BUILD_SHARED_LIBS flag to allow selecting between
both: the add_library() command automatically switches between both using
this variable when the library kind is not passed to add_library(). It
is also usual to expose the BUILD_SHARED_LIBS as an user-facing setting
with the option() command.
This way, the following will both work as expected:
% cmake -DBUILD_SHARED_LIBS=OFF ...
% cmake -DBUILS_SHARED_LIBS=ON ...
This is helpful for distributions which need (or want) to build only
static libraries.
2022-12-16 11:42:42 +01:00
Evgenii Kliuchnikov
a8f5813b84
Update
...
Documentation:
- add note that brotli is a "stream" format, not an archive-like
- regenerate .1 with Pandoc
Build:
- drop legacy "BROTLI_BUILD_PORTABLE" option
- drop "BROTLI_SANITIZED" definition
Code:
- c: comb includes
- c/enc: extract encoder state into separate header
- c/enc: drop designated q10 codepath
- c/enc: dealing better with flushing of empty stream
- fix MSVC compilation
API:
- py: use library version instead of one in version.h
- c: add plugable API to report consumed input / produced output
- c/java: support "lean" prepared dictionaries (without copy of source)
2022-11-17 13:03:09 +00:00
Keith Smiley
6d03dfbedd
Fix -Wstrict-prototypes warnings ( #985 )
...
Envoy builds brotli with -Werror, and these strict prototypes are picked
up by newer versions of clang.
2022-10-25 21:29:58 +02:00