Age | Commit message (Collapse) | Author |
|
|
|
|
|
This project was upgraded with external_updater.
Usage: tools/external_updater/updater.sh update external/zlib
For more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md
Test: TreeHugger
Change-Id: I0b342eb36d05037da3013dd3c624b4cee7839cc5
|
|
Larger payloads (i.e. bigger than 500KB) are helpful to detect programming
issues in checksums (i.e. overflows) and this patch adds a new unit test
to cover bigger payloads (6KB to 20MB).
It also adds a new unit test to cover all the 9 compression levels supported
by zlib (Z_DEFAULT_COMPRESSION is level 6).
The new tests takes near 6s (3300ms + 3200ms) to run in a K230 board, but it is way faster in any decent modern CPU (i.e. 314ms + 320ms on
Intel i7 11th gen).
Bug: 329282661
Change-Id: I4d851799ae10f98d90b114560bed9ad48896e39d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5436095
Reviewed-by: Hans Wennborg <hans@chromium.org>
Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1284921}
NOKEYCHECK=True
GitOrigin-RevId: 2f4df1ff700345b6e643af224a859f6be5c4fda1
|
|
|
|
This reverts commit 0fe2e000716b3152e4b26d0f3b5523bb517ba9a7.
Bug: 333557250
Reason for revert: we no longer need this declaration.
Change-Id: I07ac2d865b4478ebba1fe09694f13f714ba93e17
|
|
This project was upgraded with external_updater.
Usage: tools/external_updater/updater.sh update external/zlib
For more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md
Test: TreeHugger
Change-Id: I133260dbc2e106dcd1167029179554f77079b1bc
|
|
Replace SiFive code for an alternative checksum implementation
that works in short 22-iteration batches thus avoiding overflowing
16-bit counters.
As a result, it has better parallelism in the inner loop, yielding
a +20% faster checksum speed on a K230 board.
The average *decompression* gain while using the zlib wrapper for
the snappy data corpus was +2.15%, but with near +4% for HTML.
Patch by Simon Hosie, from:
https://github.com/cloudflare/zlib/pull/55
Bug: 329282661
Change-Id: I72e2ce9bb9b3d8626dedb33cf026f1af9b9b4a33
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5433273
Reviewed-by: Hans Wennborg <hans@chromium.org>
Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1284684}
NOKEYCHECK=True
GitOrigin-RevId: f68eb88e6ac1139355bad9d1f1eff784e9e82afb
|
|
Useful testing tools when we want to perform just a single operation
(compression | decompression) using gzip or zlib formats with
streaming.
Bug: 329282661
Change-Id: I54d8dbff22596955dbe4b33cb32fc802392ca003
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5431276
Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org>
Reviewed-by: Hans Wennborg <hans@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1284603}
NOKEYCHECK=True
GitOrigin-RevId: bdb85e3546ce9ceb65481ee6a36dcd0bb215a5f9
|
|
|
|
|
|
This project was upgraded with external_updater.
Usage: tools/external_updater/updater.sh update external/zlib
For more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md
Test: TreeHugger
Change-Id: If13e974ed2ff48552ede5d8f23a5dc7da47d3bec
|
|
Back in 2017, Simon Hosie implemented chunk_copy for Arm using NEON
instructions, which was later ported to x86-64 by Noel Gordon.
The basic idea is to perform wide loads and stores while doing
data decompression (i.e. load a single wide vector instead of single byte).
The current chunk_copy can be easily ported to other architectures that use
fixed length vectors/registers, but doesn't scale so well for architectures
with varied vector lengths (e.g. Arm SVE or RISCV RVV 1.0).
In any case, it is possible to have a *generic* chunk_copy** relying on the
compiler builtins memcopy/memset and this patch introduces this functionality
in Chromium zlib.
One important detail is that chunk_copy was coded *before* read64le (an
optimization suggested by Nigel Tao that requires unaligned loads) and it is
a requirement for both read64le and unconditional decoding of literals
(suggested by Dougall Johnson).
The penalty of unaligned loads in read64le can actually negate the benefits of chunk_copy,
which is why we rely on clang flags to allow code generation that deals with
the issue.
The current patch yielded an average gain of +9.5% on a K230 board, with higher
gains for some important content like HTML (+16%) and source code (+11.6%).
** Link:
https://github.com/cloudflare/zlib/commit/063def93f91a3f5e463646fb3fe6da5c8705f8e8
Bug: 329282661
Change-Id: Ia32a4a1fed16169a59cd39775fa68f4e675dac09
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5402331
Reviewed-by: Chris Blume <cblume@chromium.org>
Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1283414}
NOKEYCHECK=True
GitOrigin-RevId: cb959c56ec21abb0526f52b5f66a07fba7b6b145
|
|
non-AB code will be moved to bootable/deprecated-ota , so add necessary
visibility rules.
Test: th
Bug: 324360816
Change-Id: Icc56f020ab1470c797cad0d62e4bd027fcfcd703
|
|
Bug: 40284755
Change-Id: If51679d9d4765d125e63121a4a32b473ad2f601c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5406492
Reviewed-by: Kyle Charbonneau <kylechar@chromium.org>
Auto-Submit: danakj <danakj@chromium.org>
Owners-Override: Kyle Charbonneau <kylechar@chromium.org>
Commit-Queue: danakj <danakj@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1282463}
NOKEYCHECK=True
GitOrigin-RevId: aee7ba14d36236b760c94a087bcf3b929bb65b64
|
|
Bug: 40485134
Change-Id: I9ecd4b143546a0b963ae30237596d8f5ad9e240d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5367392
Reviewed-by: David Trainor <dtrainor@chromium.org>
Commit-Queue: David Bertoni <dbertoni@chromium.org>
Reviewed-by: Frank Liberato <liberato@chromium.org>
Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org>
Reviewed-by: Ted Choc <tedchoc@chromium.org>
Reviewed-by: Andrey Kosyakov <caseq@chromium.org>
Reviewed-by: Eric Orth <ericorth@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1281649}
NOKEYCHECK=True
GitOrigin-RevId: ffc122c1b0d9592cf386ba130de73987b82f7dee
|
|
|
|
Also clean up some of the other architectures and clarify some of
the comments.
Change-Id: I0ab3329ee0b542923a4d5f48147c1145862c4b95
|
|
|
|
This is so that it can be included
in test_mappings.zip.
Test: TH
Bug: 330775243
Change-Id: Ie255ae76e0a90c5778e79824f3d8d4b6c59bfb54
|
|
|
|
This project was upgraded with external_updater.
Usage: tools/external_updater/updater.sh update external/zlib
For more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md
Test: TreeHugger
Change-Id: Ia9940994a0770b10ce4ba4cb0ee2ec7ee6a60c95
|
|
Adding a vectorized version of Adler-32, as it should help
with the zlib wrapper for DEFLATE and PNG decoding.
The original code was written by Alex Chiang and imported
in the Cloudflare zlib fork by Simon Hosie.
Average decompression gain was +14.4% (and only +1% for compression)
with the zlib wrapper running in a Kendryte K230 board.
Bug: 329282661
Change-Id: I9ccae19c46240c6ee517e24ce142e0fe600f4321
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5378739
Reviewed-by: Hans Wennborg <hans@chromium.org>
Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1276438}
NOKEYCHECK=True
GitOrigin-RevId: c0e7820262df6b9e69252babe4ffc1cccc1af135
|
|
|
|
We already stopped supporting non-neon here, we just didn't update the comment to make that clear!
Change-Id: I69d82eadacb89ed8cbeddfe4d58d61155e36cce6
|
|
|
|
This project was upgraded with external_updater.
Usage: tools/external_updater/updater.sh update external/zlib
For more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md
Test: TreeHugger
Change-Id: I2c3dd6a7b604708cbb1ce52407fb4c603ee3aa32
|
|
Adding code to perform CPU features detection at runtime as also calls
in the entry points before processing (e.g. deflateInit(), etc).
Also add the missing bits in the CMake buildsystem to pass the proper
compiler flags and set up the defines that guard optimizations
(e.g. DEFLATE_SLIDE_HASH_RVV, ADLER32_SIMD_RVV for now).
Todo: update the GN buildsystem next.
Bug: 329282661
Change-Id: Ic5a2846b0404393d6d7ffcbd75db800725887ae5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5369154
Reviewed-by: Hans Wennborg <hans@chromium.org>
Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1274387}
NOKEYCHECK=True
GitOrigin-RevId: fd5ebdf2a679244930de70972e6d435e274fceee
|
|
The first step to add support for RISCV is to actually proof test the
CMake buildsystem to ensure that the SIMD optimizations are actually
enabled.
Currently we only enable the SIMD optimizations in CMake while building
for x86-64 and this patch will add support for a second architecture
(i.e. Arm), opening the way for a third (RISCV).
Finally, the CPU features detection model on RISCV is similar to Arm
(i.e. calls to getauxval()) instead of simply reading a register (i.e. x86),
so it is helpful to ensure that the code will cover all three
architectures (x86-64, Arm, RISCV).
Bug: 329282661
Change-Id: I4c9774d11c583361ba93e2a9ba2e16e82c483274
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5367582
Reviewed-by: Hans Wennborg <hans@chromium.org>
Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1273004}
NOKEYCHECK=True
GitOrigin-RevId: cbf0d4d5d3bbcdf1bd20e6c11924ada541042647
|
|
This expands the API coverage of the fuzzer a little bit.
Bug: 40263542
Change-Id: Ib0ff0509072aa7aa2977d6bd20ac90035eac2244
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5343954
Auto-Submit: Hans Wennborg <hans@chromium.org>
Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org>
Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1270290}
NOKEYCHECK=True
GitOrigin-RevId: 63d102e99de9f1d43b574cd720665307ceb4d1f2
|
|
deflateInit() adds some padding to the window to enable wider write
operations when sliding the window. The same padding must be added also
in deflateCopy().
Bug: 325990053
Change-Id: Iea3afbdb8860a63aecc39cf60b5215ef00498194
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5340119
Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org>
Auto-Submit: Hans Wennborg <hans@chromium.org>
Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1269779}
NOKEYCHECK=True
GitOrigin-RevId: 10b65b44c2040bde31fa156253f3d0c44e3dc395
|
|
With deflateBound() now fixed we can put it back in the fuzzer.
Bug: 40270738
Change-Id: I7a0f89faf3d741f3d098439f273c0dafbd711f1c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5335101
Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org>
Commit-Queue: Hans Wennborg <hans@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1267396}
NOKEYCHECK=True
GitOrigin-RevId: 98f49d7e197252c5cba4e9c5bf5abcc3441ffb81
|
|
When chromium_zlib_hash is enabled, we set hash_bits to 15 regardless
of memLevel, throwing off the computations in deflateBound(). Return
a conservative bound instead for now.
Bug: 40270738
Change-Id: I9fbe64887ff9520e22d1be5d0557548ec2e7db45
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5335167
Auto-Submit: Hans Wennborg <hans@chromium.org>
Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org>
Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1267210}
NOKEYCHECK=True
GitOrigin-RevId: bd787538b3dc5dcd9243d4ef0a524fdf07cd87b0
|
|
am: 14db8b8c0f
Original change: https://android-review.googlesource.com/c/platform/external/zlib/+/2978893
Change-Id: I5706ec91c7a97d038143c6f0b7d12a1e53fe2dc7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
|
|
This project was upgraded with external_updater.
Usage: tools/external_updater/updater.sh update external/zlib
For more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md
Test: TreeHugger
Change-Id: Iee8889e54a2367462609c0f1bd965935674d2a6a
|
|
Disable by default the build of minizip_bin tool, require user to explicitly
enable its build at configuration time.
The minizip_bin is not officially part of canonical zlib and the
auxiliary tool is only useful for profiling/debugging.
Bug: 326391770
Change-Id: I68e8c71d62091bcb427881d060437c132a418fd8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5319910
Reviewed-by: Hans Wennborg <hans@chromium.org>
Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1264658}
NOKEYCHECK=True
GitOrigin-RevId: 7218bd8dba39a794b51c779d864fd5b2f92014ac
|
|
- Use all the wrappers (gzip, zlib, none); not just the default (zlib)
- Pass random sized input and output buffers
- Disable the deflateBound() check for now
This makes the fuzzer cover the bug below.
Bug: 325990053, 40263542
Change-Id: I8ed571b7e84155d2fc0f4f929a5b24a4c9583958
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5310394
Commit-Queue: Hans Wennborg <hans@chromium.org>
Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1263816}
NOKEYCHECK=True
GitOrigin-RevId: 69575154e8a598d1f9347877caf34d71f08e081a
|
|
When copying directly to next_out, as is done in deflate_stored, there
may not be enough space in the buffer.
Fix by jmaaninen, test by me.
Bug: 325990053
Change-Id: Ia28d3fac9c2db3f27a23a5fbde399cad323ef40d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5307227
Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org>
Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1263750}
NOKEYCHECK=True
GitOrigin-RevId: 67c52873de10c06808c0de985a1e3cb8c3456d7a
|
|
Migrate all remaining DIR_METADATA in third_party/
Verify components with http://b/components/{id} or at
go/chrome-on-buganizer-prod-components.
Bug: chromium:1518875
Change-Id: I4c519e4d2a524dc9248f8cf621b766aa26d62d42
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5287937
Reviewed-by: Rick Byers <rbyers@chromium.org>
Commit-Queue: Jeff Yoon <jeffyoon@google.com>
Cr-Commit-Position: refs/heads/main@{#1259542}
NOKEYCHECK=True
GitOrigin-RevId: fe54bb24e2ce23c2a8b4f4f87cf578862301c7bc
|
|
The latest version of Clang changed what macros it predefines on Apple
targets, causing errors about predefined macros in zlib.
See:
https://github.com/madler/zlib/commit/4bd9a71f3539b5ce47f0c67ab5e01f3196dc8ef9
Bug: 1519899
Change-Id: Ie75ef4078f2c86d89ba6c036ddd13e768a40ccbb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5237020
Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org>
Commit-Queue: Hans Wennborg <hans@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1253252}
NOKEYCHECK=True
GitOrigin-RevId: 2f39ac8d0a414dd65c0e1d5aae38c8f97aa06ae9
|
|
am: ecca3e0b49
Original change: https://android-review.googlesource.com/c/platform/external/zlib/+/2923510
Change-Id: I24e50f668c1c284af30b7b32533fb7b7481d69c1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
|
|
This project was upgraded with external_updater.
Usage: tools/external_updater/updater.sh update zlib
For more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md
Test: TreeHugger
Change-Id: I23d52b6301d2ed861155d66cdc9655f0eb06ba7d
|
|
After the minizip update, there are no more instances of this warning.
Bug: 1314867
Change-Id: I5ccbb2a41db104e3c2c3958cc175abf810295175
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5206612
Auto-Submit: Hans Wennborg <hans@chromium.org>
Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org>
Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1248348}
NOKEYCHECK=True
GitOrigin-RevId: 09a7bce97b70ef641d5b59b354e8fe80b56e98b7
|
|
am: 8dfcd22af5 am: c0b5bc9486
Original change: https://android-review.googlesource.com/c/platform/external/zlib/+/2912422
Change-Id: I4210c090d8e08c96e875b5664f7e9bc525f004a0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
am: 8dfcd22af5
Original change: https://android-review.googlesource.com/c/platform/external/zlib/+/2912422
Change-Id: I545a0b0eea03b714ad74951a3d3414dcd570fae6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
|
|
This pulls in the latest version from
https://github.com/madler/zlib/tree/develop/contrib/minizip and applies
(and updates) our .patch files.
One behavior change is that this enables minizip to open empty
zip files (where the End of Central Directory Record occurs at
offset zero).
Bug: 1517633
Change-Id: Ifdb55795b5326f064f6b05be8af8d39bdae91058
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5190344
Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org>
Reviewed-by: Daniel Rubery <drubery@chromium.org>
Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com>
Commit-Queue: Hans Wennborg <hans@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1247614}
NOKEYCHECK=True
GitOrigin-RevId: 0e347be5e0a1af5eb0120ebe30865f0c9cb29f7c
|
|
This project was upgraded with external_updater.
Usage: tools/external_updater/updater.sh update zlib
For more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md
Test: TreeHugger
Change-Id: I330816f68a171deff23cc3657ba6b18919c4f6bc
|