diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-06-23 16:29:48 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-05-23 13:31:33 +0200 |
commit | 71ff71248d14d7b2c6508fd634361914fbad2139 (patch) | |
tree | 1ff0a9e79f433fab051f9c4a64cb95ef8dc01a8a | |
parent | 3a544b0408aea33513441b7b25f746d402971c78 (diff) | |
download | qtwebengine-chromium-71ff71248d14d7b2c6508fd634361914fbad2139.tar.gz |
Enable minimal optimizations when debug-symbols are disabled
Restores building Blink with -Os when debug-systems are stripped
anyway. We did this previously in gyp, but didn't port it to GN before
now.
Change-Id: Ia22b1de1ba63423c22f1ecb5c173b7cab13a1af3
Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
8 files changed, 32 insertions, 0 deletions
diff --git a/chromium/build/config/compiler/BUILD.gn b/chromium/build/config/compiler/BUILD.gn index 23a2abc0293..533dd990215 100644 --- a/chromium/build/config/compiler/BUILD.gn +++ b/chromium/build/config/compiler/BUILD.gn @@ -1881,6 +1881,14 @@ config("no_optimize") { } } +config("optimize_size_only") { + if (is_win) { + cflags = [ "/O1" ] + } else { + cflags = [ "-Os" ] + } +} + # Turns up the optimization level. On Windows, this implies whole program # optimization and link-time code generation which is very expensive and should # be used sparingly. diff --git a/chromium/third_party/blink/renderer/config.gni b/chromium/third_party/blink/renderer/config.gni index 42903e7b2f6..4cc8c0ce5a9 100644 --- a/chromium/third_party/blink/renderer/config.gni +++ b/chromium/third_party/blink/renderer/config.gni @@ -31,6 +31,8 @@ declare_args() { # -1 means auto-set according to debug/release and platform. blink_symbol_level = -1 + blink_optimize_size_only = false + # If true, defaults image interpolation to low quality. use_low_quality_image_interpolation = is_android @@ -89,6 +91,9 @@ if (remove_webcore_debug_symbols) { } else { blink_symbol_level = 0 } + if (is_debug) { + blink_optimize_size_only = true + } } if (blink_symbol_level == 2) { @@ -100,3 +105,9 @@ if (blink_symbol_level == 2) { } else { blink_symbols_config = [ "//build/config/compiler:default_symbols" ] } + +if (blink_optimize_size_only) { + blink_optimization_config = [ "//build/config/compiler:optimize_size_only" ] +} else { + blink_optimization_config = [ "//build/config/compiler:default_optimization" ] +} diff --git a/chromium/third_party/blink/renderer/controller/BUILD.gn b/chromium/third_party/blink/renderer/controller/BUILD.gn index 7f3cf01859a..4a40a1d22df 100644 --- a/chromium/third_party/blink/renderer/controller/BUILD.gn +++ b/chromium/third_party/blink/renderer/controller/BUILD.gn @@ -52,6 +52,8 @@ component("controller") { configs -= [ "//build/config/compiler:default_symbols" ] configs += blink_symbols_config + configs -= [ "//build/config/compiler:default_optimization" ] + configs += blink_optimization_config } group("webkit_unit_tests_data") { diff --git a/chromium/third_party/blink/renderer/core/core.gni b/chromium/third_party/blink/renderer/core/core.gni index 3b55bc812a4..2a33dc120e3 100644 --- a/chromium/third_party/blink/renderer/core/core.gni +++ b/chromium/third_party/blink/renderer/core/core.gni @@ -28,6 +28,9 @@ core_config_remove = [] if (is_win && is_official_build) { core_config_remove += [ "//build/config/compiler:default_optimization" ] core_config_add += [ "//build/config/compiler:optimize_max" ] +} else { + core_config_remove += [ "//build/config/compiler:default_optimization" ] + core_config_add += blink_optimization_config } core_config_remove += [ "//build/config/compiler:default_symbols" ] diff --git a/chromium/third_party/blink/renderer/modules/BUILD.gn b/chromium/third_party/blink/renderer/modules/BUILD.gn index 8d2f508c56b..94ebce065fe 100644 --- a/chromium/third_party/blink/renderer/modules/BUILD.gn +++ b/chromium/third_party/blink/renderer/modules/BUILD.gn @@ -170,6 +170,8 @@ target("jumbo_" + modules_target_type, "modules") { configs -= [ "//build/config/compiler:default_symbols" ] configs += blink_symbols_config + configs -= [ "//build/config/compiler:default_optimization" ] + configs += blink_optimization_config } jumbo_source_set("modules_testing") { diff --git a/chromium/third_party/blink/renderer/modules/modules.gni b/chromium/third_party/blink/renderer/modules/modules.gni index 3d3ee40c96e..988e25b6d40 100644 --- a/chromium/third_party/blink/renderer/modules/modules.gni +++ b/chromium/third_party/blink/renderer/modules/modules.gni @@ -73,4 +73,6 @@ set_defaults("blink_modules_sources") { ] configs -= [ "//build/config/compiler:default_symbols" ] configs += blink_symbols_config + configs -= [ "//build/config/compiler:default_optimization" ] + configs += blink_optimization_config } diff --git a/chromium/third_party/blink/renderer/platform/BUILD.gn b/chromium/third_party/blink/renderer/platform/BUILD.gn index be088f9a86e..611b3ebdda5 100644 --- a/chromium/third_party/blink/renderer/platform/BUILD.gn +++ b/chromium/third_party/blink/renderer/platform/BUILD.gn @@ -1658,6 +1658,8 @@ jumbo_component("platform") { configs -= [ "//build/config/compiler:default_symbols" ] configs += blink_symbols_config + configs -= [ "//build/config/compiler:default_optimization" ] + configs += blink_optimization_config } jumbo_static_library("test_support") { diff --git a/chromium/third_party/blink/renderer/platform/wtf/BUILD.gn b/chromium/third_party/blink/renderer/platform/wtf/BUILD.gn index 52aa02fa03c..4fc77a8e81f 100644 --- a/chromium/third_party/blink/renderer/platform/wtf/BUILD.gn +++ b/chromium/third_party/blink/renderer/platform/wtf/BUILD.gn @@ -297,6 +297,8 @@ jumbo_component("wtf") { configs -= [ "//build/config/compiler:default_symbols" ] configs += blink_symbols_config + configs -= [ "//build/config/compiler:default_optimization" ] + configs += blink_optimization_config } test("wtf_unittests") { |