summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-01-25Snap for 6160382 from 6963a3d1d3dbd280c85f55306e3a72b09aaffeed to rvc-releaseandroid-build-team Robot
Change-Id: I729a87356fd5dec2dae8002a0d726931056b44c4
2020-01-25Merge "Make ramdisk_available." am: 3b3f8457d0 am: be4c8d7c31 am: 741e394190Automerger Merge Worker
Change-Id: Ia54ebfbae4ed71d86d6b0c932ccfc5a1a380557f
2020-01-25Merge "Make ramdisk_available." am: 3b3f8457d0 am: be4c8d7c31Automerger Merge Worker
Change-Id: I40e6c6bdfb8d82d41ac518fc605e729473966ff3
2020-01-24Merge "Make ramdisk_available."Yifan Hong
am: 3b3f8457d0 Change-Id: Iecc3503a5695dda401e1a2a4ef0e68116398b092
2020-01-24Merge "Make ramdisk_available."android-r-preview-1Yifan Hong
2020-01-24Revert "Roll clang n333938-3a6da112-1 : n340158-efb130fc-2."Hans Wennborg
This reverts commit 0aa05cca9db25a9fa8d18f77bf6b2452bc608ead. Reason for revert: This broke arm64-builder-rel and some other builders, see bug. Original change's description: > Roll clang n333938-3a6da112-1 : n340158-efb130fc-2. > > Ran `tools/clang/scripts/upload_revision.py efb130fc93059bdf02d3a83950ddabc5d119f9de`. > > This increases the clang version from 10 to 11. > > It also disables the use of vector instructions in zlib to work around > new false positives in msan (see crbug.com/1045291). > > Bug: 1030664 > Change-Id: I5417d3063f0d67a61cdf31141b05a51a56e84482 > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2014904 > Reviewed-by: Nico Weber <thakis@chromium.org> > Commit-Queue: Hans Wennborg <hans@chromium.org> > Cr-Commit-Position: refs/heads/master@{#735080} TBR=thakis@chromium.org,hans@chromium.org Change-Id: I48754484c26ebf6b1f0b4a47c82fe3c74ee39837 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 1030664,1045592 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2020785 Reviewed-by: Hans Wennborg <hans@chromium.org> Commit-Queue: Hans Wennborg <hans@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#735124} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: ec2aab7d123590cfb332ba56d7faee2e1ff4a779
2020-01-24Roll clang n333938-3a6da112-1 : n340158-efb130fc-2.Nico Weber
Ran `tools/clang/scripts/upload_revision.py efb130fc93059bdf02d3a83950ddabc5d119f9de`. This increases the clang version from 10 to 11. It also disables the use of vector instructions in zlib to work around new false positives in msan (see crbug.com/1045291). Bug: 1030664 Change-Id: I5417d3063f0d67a61cdf31141b05a51a56e84482 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2014904 Reviewed-by: Nico Weber <thakis@chromium.org> Commit-Queue: Hans Wennborg <hans@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#735080} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 0aa05cca9db25a9fa8d18f77bf6b2452bc608ead
2020-01-23Using zmemzero to initialize deflate_stateAdenilson Cavalcanti
Due to its history, zlib has to support building for environments without access to basic C functions (e.g. memcpy, memset, etc) or in environments with odd memory management patterns (e.g. MSDOS). Therefore, it is good form to use zmemset/zmemcpy/etc for handling memory and the same applies for initializing a memory block to zero. Bug: 1032721 Change-Id: I8d898872ca00197cc7e961d7c49e1912073895c2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2016772 Reviewed-by: Chris Blume <cblume@chromium.org> Reviewed-by: vikas soni <vikassoni@chromium.org> Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#734686} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: bcdbc75cd3f832ad0527a00f5bf56aa437abf1f6
2020-01-23Properly initialize deflate_state instanceAdenilson Cavalcanti
Fix use of uninitialized memory reported by oss-fuzz (and confirmed by valgrind@aarch64) by properly setting deflate_state internal member (i.e. s->prev) to a valid value before use. For details, see: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11360 Bug: 1032721 Change-Id: I6c7b2e87e81b8ccc6c39298fd3c704befd797b96 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2015667 Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org> Reviewed-by: Chris Blume <cblume@chromium.org> Reviewed-by: vikas soni <vikassoni@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#734278} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 2d43e0d3369904d881e8519a69481226bba3394c
2020-01-21Make ramdisk_available.Yifan Hong
Test: pass Bug: 147347110 Change-Id: I212f604f83d4fafc6053028ae90b21b0a5bcf274
2020-01-17Snap for 6142138 from 4f7242fcf2ebcb9d3a39d43bbdd7cb1022874212 to rvc-releaseandroid-build-team Robot
Change-Id: I1c824f48e13eb46b5d9f7d73f1591c9367ae72c2
2020-01-16Merge "Revert "Enable the various chrome zlib optimizations."" am: ↵Automerger Merge Worker
8dda271246 am: fb0bd5710c am: 29d63d4417 Change-Id: I80538d6e157d99a4c4c2ee926721596633131646
2020-01-16Merge "Revert "Enable the various chrome zlib optimizations."" am: ↵Automerger Merge Worker
8dda271246 am: fb0bd5710c Change-Id: Ifa5951b5d94e533d3709dd69a95bdf4012c3ab3c
2020-01-16Merge "Revert "Enable the various chrome zlib optimizations.""Elliott Hughes
am: 8dda271246 Change-Id: I85e8274171fcd4dd5291567bf2e848e8aebbd819
2020-01-16Merge "Revert "Enable the various chrome zlib optimizations.""Elliott Hughes
2020-01-16Revert "Enable the various chrome zlib optimizations."Zhen Zhang
This reverts commit f026d93d15e62bed8c2ae419a91ad9ee40ee7401. Reason for revert: breaks NDK builds by assuming Neon. Bug: http://b/147822878 Change-Id: I51d46aa15eebc7c9eba42a02c77c326fc982412e
2020-01-16Merge "Enable the various chrome zlib optimizations." am: a9da32b4ff am: ↵Automerger Merge Worker
99f98798a6 am: 2fe80c6629 Change-Id: Ie09d396172c8e22bd017fd526b4117c1635575ac
2020-01-16Merge "Enable the various chrome zlib optimizations." am: a9da32b4ff am: ↵Automerger Merge Worker
99f98798a6 Change-Id: Ieba98f97ffa938abaa3b14da561069468526d054
2020-01-16Merge "Enable the various chrome zlib optimizations."Elliott Hughes
am: a9da32b4ff Change-Id: If16329e5bc0e75ff582aa563ec4806c7c6674c42
2020-01-16Merge "Enable the various chrome zlib optimizations."Elliott Hughes
2020-01-14Enable the various chrome zlib optimizations.Elliott Hughes
This is for arm/arm64 only, because there are test failures for x86/x86-64 that we haven't understood yet. Bug: https://issuetracker.google.com/115695768 Bug: https://issuetracker.google.com/135889247 Bug: http://b/135038583 Test: boots Test: zlib_bench scores 2x or more faster on arm/arm64 Change-Id: I1f991cb71338bc99885edbebc964f2ad3b14234a
2020-01-14Reformat all gn files in /third_party/zlib/google.Nico Weber
`gn format` recently changed its formatting behavior for deps, source, and a few other elements when they are assigned (with =) single-element lists to be consistent with the formatting of updates (with +=) with single-element. Now that we've rolled in a GN binary with the change, reformat all files so that people don't get presubmit warnings due to this. This CL was uploaded by git cl split. R=isherman@chromium.org Bug: 1041419 Change-Id: I91a90114ecefd7dc850abbc9f57811bd46432cdc Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1998796 Auto-Submit: Nico Weber <thakis@chromium.org> Reviewed-by: Ilya Sherman <isherman@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#731398} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 1f34a393281949df92a353b738d45370e78e1413
2020-01-13Reformat all gn files in /third_party/zlib/contrib/tests/fuzzers.Nico Weber
`gn format` recently changed its formatting behavior for deps, source, and a few other elements when they are assigned (with =) single-element lists to be consistent with the formatting of updates (with +=) with single-element. Now that we've rolled in a GN binary with the change, reformat all files so that people don't get presubmit warnings due to this. This CL was uploaded by git cl split. R=cblume@chromium.org Bug: 1041419 Change-Id: I7c5f71a3369485a78c6e7ba9490f893e15b65c9c Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1997933 Auto-Submit: Nico Weber <thakis@chromium.org> Reviewed-by: Chris Blume <cblume@chromium.org> Commit-Queue: Chris Blume <cblume@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#730634} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: c90cfb0e58f67880aaea2d170c3c5bc8a50f6caa
2020-01-10Snap for 6123763 from 6a303e1ace58bc9c5d8f9478453c6c353821d642 to rvc-releaseandroid-build-team Robot
Change-Id: Idcf6b20dfaca7d5d3661a1ed045aa0a44e6f0d22
2020-01-09Merge "Upgrade zlib to 814da1f383b625955149c3845db62af3f29a4ffe" am: ↵Automerger Merge Worker
457c92b855 am: 9db9402ccd am: 6833898932 Change-Id: I6dd5be6a5c7e3b89d474aab33b8f17a3a9048f07
2020-01-09Merge "Upgrade zlib to 814da1f383b625955149c3845db62af3f29a4ffe" am: ↵Automerger Merge Worker
457c92b855 am: 9db9402ccd Change-Id: I31f924658cfcfc3ffb9eb92a75d941be75397528
2020-01-09Merge "Upgrade zlib to 814da1f383b625955149c3845db62af3f29a4ffe"Elliott Hughes
am: 457c92b855 Change-Id: I4266d1bb73f697b525158bfefdfec3453ddf796c
2020-01-09Merge "Upgrade zlib to 814da1f383b625955149c3845db62af3f29a4ffe"Elliott Hughes
2020-01-08Upgrade zlib to 814da1f383b625955149c3845db62af3f29a4ffeHaibo Huang
Test: None Change-Id: I96acd457d55ed8fbce25f328a7dc43e7cd83a8d4
2020-01-08Unify CPU features detection codeAdenilson Cavalcanti
This will allow to remove some duplicated code (i.e. thread synchronization) while at same time removing unnecessary use of inline ASM for Intel features detection. A few other advantages: - remove some extra logic (e.g. no need to test the platform to include the correct CPU detection header). - simplifies the buildsystem (i.e. we always include cpu_features.c) - get rid of the simd_stub file. Bug: 1032721 Change-Id: I9427b34ec09dddc41925844a6ec4e6aa4d8f3207 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1987190 Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org> Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#729515} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: d989ac2c596e88e7581eb93d053945a43c611124
2019-12-21Revert "Unify CPU features detection code"Hans Wennborg
This reverts commit 6f7e5e79cefe982ad84a88927565a88db2e592be. Reason for revert: This broke the build, e.g. https://ci.chromium.org/p/chromium/builders/ci/ios-device/144512 ../../third_party/zlib/cpu_features.c:75:13: error: unused function '_cpu_check_features' [-Werror,-Wunused-function] static void _cpu_check_features(void) ^ Original change's description: > Unify CPU features detection code > > This will allow to remove some duplicated code (i.e. thread synchronization) > while at same time removing unnecessary use of inline ASM for Intel features > detection. > > A few other advantages: > - remove some extra logic (e.g. no need to test the platform to include the > correct CPU detection header). > - simplifies the buildsystem (i.e. we always include cpu_features.c) > - get rid of the simd_stub file. > > Bug: 1032721 > Change-Id: Ic93472d3337bc2cbe092d4cf8fbe4b31b1ceca6d > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1976820 > Reviewed-by: Chris Blume <cblume@chromium.org> > Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org> > Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org> > Cr-Commit-Position: refs/heads/master@{#727038} TBR=cavalcantii@chromium.org,cblume@chromium.org,mtklein@chromium.org,adenilson.cavalcanti@arm.com Change-Id: I20c5dedb98ba8b5d304ff1339042bcf243505e88 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 1032721 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1979790 Reviewed-by: Hans Wennborg <hans@chromium.org> Commit-Queue: Hans Wennborg <hans@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#727039} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 9d8f976414a7608c3361718462253104a761c6bb
2019-12-21Unify CPU features detection codeAdenilson Cavalcanti
This will allow to remove some duplicated code (i.e. thread synchronization) while at same time removing unnecessary use of inline ASM for Intel features detection. A few other advantages: - remove some extra logic (e.g. no need to test the platform to include the correct CPU detection header). - simplifies the buildsystem (i.e. we always include cpu_features.c) - get rid of the simd_stub file. Bug: 1032721 Change-Id: Ic93472d3337bc2cbe092d4cf8fbe4b31b1ceca6d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1976820 Reviewed-by: Chris Blume <cblume@chromium.org> Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org> Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#727038} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 6f7e5e79cefe982ad84a88927565a88db2e592be
2019-12-12Unify optimized insert_string implementationsAdenilson Cavalcanti
This change will unify the x86 and Arm optimized implementations for insert_string (used for compression). The objective here is two-fold: a) Remove duplicated code. b) Better insulate deflate.c divergence when compared to vanilla zlib. Bug: 1032721 Change-Id: Id2f65398aeb5a6384708493f0f6ae1fcd14022c2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1960893 Reviewed-by: Chris Blume <cblume@chromium.org> Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#724325} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 9d4ec9349a1bf609eedb917c44c69eb0df9ff6bb
2019-12-11Snap for 6063671 from a997168d0959d3d8531c1e6240b35043085b1e98 to rvc-releaseandroid-build-team Robot
Change-Id: If61c1663c07303eb0e560150ce35e6ba261a94f7
2019-12-10Merge "Upgrade zlib to f262c1b3c4196a2fee98c113142faff525b8d884" am: ↵Automerger Merge Worker
73131478df am: 889a077ed1 am: e28c6e4431 Change-Id: I52be68a5e932620f6deb3ba091f7f27efb9c3e88
2019-12-10Merge "zlib: add OWNERS.android for the local janitors." am: 4d68cbe186 am: ↵Automerger Merge Worker
b977766d18 am: 3c2bfd24f9 Change-Id: I10d845e158ace1baf195fc1ed2ce89db0e258a02
2019-12-10Merge "Upgrade zlib to f262c1b3c4196a2fee98c113142faff525b8d884" am: ↵Automerger Merge Worker
73131478df am: 889a077ed1 Change-Id: Id9694440a6774129b497bb3323bd98a52e95d509
2019-12-10Merge "zlib: add OWNERS.android for the local janitors." am: 4d68cbe186 am: ↵Automerger Merge Worker
b977766d18 Change-Id: Icd2ad376e703ec1ebbd81f0431d5595ab9795c28
2019-12-10Merge "Upgrade zlib to f262c1b3c4196a2fee98c113142faff525b8d884"Haibo Huang
am: 73131478df Change-Id: Id45e729e25d7f3baa863dc080b05694f16187886
2019-12-10Merge "zlib: add OWNERS.android for the local janitors."Haibo Huang
am: 4d68cbe186 Change-Id: I4c2783372b07523fc84b4200132a3773b8e273ba
2019-12-10Merge "Upgrade zlib to f262c1b3c4196a2fee98c113142faff525b8d884"Haibo Huang
2019-12-10Upgrade zlib to f262c1b3c4196a2fee98c113142faff525b8d884Haibo Huang
Test: None Exempt-From-Owner-Approval: Upgrade library Change-Id: I1f1e1cb95d391f53e9c3941e332abb6b5867c40f
2019-12-10Merge "zlib: add OWNERS.android for the local janitors."Haibo Huang
2019-12-10zlib: add OWNERS.android for the local janitors.Elliott Hughes
Exempt-From-Owner-Approval: recursion: see recursion. Change-Id: I99474a2ba24492486fe5366d68a7e75437e0507d
2019-12-04Remove use of inline ASM in insert_string_sseChris Blume
It seems that some years ago clang@Windows didn't have the proper intrinsic required, which prompted the use of inline ASM. It has a side effect in that it will allow compilation of the optimized function within the same compilation unit while using regular compiler flags (i.e. 'crc32' instruction on x86 requires some special compiler flags). Main issue is that inline ASM is blocked on dependencies (e.g. 'base') that will be linked to NaCl. The main idea here is to allow the whole Chromium code base to use the highly optimized checksums in zlib (e.g. crc32 and Adler-32), exported through an interface (i.e. base::Crc32()). This patch fixes this issue by removing the use of inline ASM. The workaround is to use clang/gcc 'target attributes' to instruct the backend to use different code generation options for the optimized function, see: https://clang.llvm.org/docs/AttributeReference.html#target NOTE: While testing on my personal Windows PC, VS2019 including smmintrin.h was insufficient. I needed to explicitly include either immintrin.h or nmmintrin.h. I expected I would need that, but it seems to be working with just smmintrin.h. Bug: 902789 Change-Id: Id692fb839e20b26f9ba8b45538e652d5b140cd36 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1941688 Commit-Queue: Chris Blume <cblume@chromium.org> Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#721425} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 1cebcd57bc3d09c39783395e6b173ff1f358a91b
2019-11-26Revert "Remove use of inline ASM in insert_string_sse"Chris Blume
This reverts commit ea6b9281bbf3ca08ccef8f5266f88de6f56c5ff6. Reason for revert: It turns out the V8 team needs the MSVC build. :) I tried installing the Clang compiler as part of Visual Studio 2017 and 2019 but neither of them became options in the toolchain. I'll need to spend more time figuring out how to get Clang on Windows. Original change's description: > Remove use of inline ASM in insert_string_sse > > It seems that some years ago clang@Windows didn't have the > proper intrinsic required, which prompted the use of inline > ASM. > > It has a side effect in that it will allow compilation of the > optimized function within the same compilation unit while using regular > compiler flags (i.e. 'crc32' instruction on x86 requires some special > compiler flags). > > Main issue is that inline ASM is blocked on dependencies (e.g. 'base') > that will be linked to NaCl. > > The main idea here is to allow the whole Chromium code base to use the > highly optimized checksums in zlib (e.g. crc32 and Adler-32), exported > through an interface (i.e. base::Crc32()). > > This patch fixes this issue by removing the use of inline ASM. > > The workaround is to use clang/gcc 'target attributes' to instruct the > backend to use different code generation options for the optimized > function, see: > https://clang.llvm.org/docs/AttributeReference.html#target > > Bug: 902789 > Change-Id: I0d139268aefb8335310c0e3f6533006be9af6470 > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1931272 > Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org> > Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org> > Cr-Commit-Position: refs/heads/master@{#718788} TBR=cavalcantii@chromium.org,cblume@chromium.org,mtklein@chromium.org,adenilson.cavalcanti@arm.com Change-Id: I6b3fcce10197121b548300855710e99f7048f1ae No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 902789 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1936189 Reviewed-by: Chris Blume <cblume@chromium.org> Commit-Queue: Chris Blume <cblume@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#719105} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 80c2a793b4ba20d9638fbdd030a1687dc26242a3
2019-11-25Remove use of inline ASM in insert_string_sseAdenilson Cavalcanti
It seems that some years ago clang@Windows didn't have the proper intrinsic required, which prompted the use of inline ASM. It has a side effect in that it will allow compilation of the optimized function within the same compilation unit while using regular compiler flags (i.e. 'crc32' instruction on x86 requires some special compiler flags). Main issue is that inline ASM is blocked on dependencies (e.g. 'base') that will be linked to NaCl. The main idea here is to allow the whole Chromium code base to use the highly optimized checksums in zlib (e.g. crc32 and Adler-32), exported through an interface (i.e. base::Crc32()). This patch fixes this issue by removing the use of inline ASM. The workaround is to use clang/gcc 'target attributes' to instruct the backend to use different code generation options for the optimized function, see: https://clang.llvm.org/docs/AttributeReference.html#target Bug: 902789 Change-Id: I0d139268aefb8335310c0e3f6533006be9af6470 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1931272 Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org> Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#718788} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: ea6b9281bbf3ca08ccef8f5266f88de6f56c5ff6
2019-11-21Fix performance issue in RAW modeAdenilson Cavalcanti
While investigating the use of RAW mode, I noticed that it was *slower* for compression than GZIP or ZLIB wrapper formats, which didn't make sense (i.e. we don't calculate a data integrity check using RAW mode). It turns out that the code was falling back to the portable implementation of insert_string(), instead of using the optimized version that rely on 'crc32w' as a hash function. The reason is that CPU features detection is not triggered while using RAW mode (i.e. we never call crc32() with a NULL buffer). This patch fixes this issue ensuring that RAW mode is going to be faster for both compression/decompression than either ZLIB or GZIP formats. Bug: 833361 Change-Id: I285297f67ffc0114700ed03c2186ad21aab8b40e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1929634 Reviewed-by: Chris Blume <cblume@chromium.org> Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org> Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#717877} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 171a0a69eb5d70f8a9f44000e26bc7dc65f1fd97
2019-11-14zlib: Allowing compression level to be selected in utilsSam Maier
Allow users to set the compression level while using CompressHelper(). There is a 2x to 4x compression speed difference between levels [1..9], where it is possible to trade speed for better compression ratios (and vice-versa). It is up the user to experiment with the data to find the sweet spot for its application (default compression level is 6). Bug: 833361 Change-Id: Ia710cc7322707ace242133b283610eaa48def31f Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1912791 Commit-Queue: Adenilson Cavalcanti <cavalcantii@chromium.org> Commit-Queue: Sam Maier <smaier@chromium.org> Auto-Submit: Sam Maier <smaier@chromium.org> Reviewed-by: Adenilson Cavalcanti <cavalcantii@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#715455} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 3857767142ed56b1ec44a8cdda52472e1b357cc3
2019-11-10Snap for 5999026 from 378b7b7ddc90211f53220fc1c851f224b816c7b3 to rvc-releaseandroid-build-team Robot
Change-Id: Icdcc58940a0b09e514f3c9c22f428cf10e4689d7