Commit bcf4673e authored by Max Moroz's avatar Max Moroz Committed by Commit Bot

Sanitizers: explicitly disable use_sanitizer_coverage when use_clang_coverage=true.

A follow-up for https://chromium-review.googlesource.com/c/chromium/src/+/1112199.
These two changes should significantly speed up code coverage builds. Build time,
binary sizes and runtime all get improved by ~2x. See the other CL description and
the bugs referenced for more precise numbers and targets tested.

We already have an assertion against enabling both use_sanitizer_coverage and
use_clang_coverage via GN args, but the former still could be turned on indirectly
if a fuzzing engine is used (e.g. use_libfuzzer or use_afl).

Bug: 846054
Change-Id: Idcd87a4589eda71e519d382ef235b38cc0984ed3
Reviewed-on: https://chromium-review.googlesource.com/1112305Reviewed-by: default avatarAbhishek Arya <inferno@chromium.org>
Commit-Queue: Max Moroz <mmoroz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#569779}
parent 706fe364
......@@ -4,6 +4,7 @@
import("//build/config/chrome_build.gni")
import("//build/config/chromecast_build.gni")
import("//build/config/coverage/coverage.gni")
import("//build/toolchain/toolchain.gni")
declare_args() {
......@@ -146,7 +147,9 @@ use_fuzzing_engine = use_libfuzzer || use_afl
# declare_args block. User overrides are only applied at the end of a
# declare_args block.
declare_args() {
use_sanitizer_coverage = use_fuzzing_engine || sanitizer_coverage_flags != ""
use_sanitizer_coverage =
!use_clang_coverage &&
(use_fuzzing_engine || sanitizer_coverage_flags != "")
# Detect overflow/underflow for global objects.
#
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment