Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(10)

Issue 2552623002: Remove /Zc:sizedDealloc- hack

Created:
4 years ago by brucedawson
Modified:
3 years, 11 months ago
Reviewers:
Nico
CC:
chromium-reviews
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Remove /Zc:sizedDealloc- hack Early versions of VS 2015 had an implementation of sizedDealloc that caused link errors. Later versions improved it so it can handle Chrome now, although its results are still not guaranteed, and it can end up pulling in object files that would otherwise not be referenced. Testing with the settings below I find that this change (reenabling sized dealloc) costs us a total of about 190 KB, mostly in code size: is_chrome_branded = true is_component_build = false is_debug = false target_cpu = "x86" is_official_build = true full_wpo_on_official = true chrome.exe .text: 1568 bytes change .rdata: 112 bytes change .reloc: 28 bytes change Total change: 1708 bytes chrome.dll .text: 84384 bytes change .rdata: 4832 bytes change .reloc: 4212 bytes change Total change: 93428 bytes chrome_child.dll .text: 88580 bytes change .rdata: 3232 bytes change .data: -4 bytes change .reloc: 3216 bytes change Total change: 95024 bytes BUG=526851, 594758

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+0 lines, -3 lines) Patch
M build/config/win/BUILD.gn View 1 chunk +0 lines, -3 lines 0 comments Download

Messages

Total messages: 19 (12 generated)
brucedawson
I guessed that this change had the potential to affect binary size so I ran ...
4 years ago (2016-12-05 19:31:29 UTC) #7
Nico
Wow nice, lgtm. In crbug.com/594758 I said "Also, if we placement new anywhere so that ...
4 years ago (2016-12-12 21:56:29 UTC) #8
brucedawson
On 2016/12/12 21:56:29, Nico wrote: > Wow nice, lgtm. > > In crbug.com/594758 I said ...
4 years ago (2016-12-12 21:58:19 UTC) #9
Nico
Huh, that's surprising, I would've expected that to help...I guess it helps more with perf ...
4 years ago (2016-12-12 22:01:36 UTC) #11
Nico
(Hans points out that is_official_build / LTCG might change the numbers here, and due to ...
4 years ago (2016-12-12 22:07:05 UTC) #12
brucedawson
On 2016/12/12 22:07:05, Nico wrote: > (Hans points out that is_official_build / LTCG might change ...
4 years ago (2016-12-12 22:44:28 UTC) #13
brucedawson
4 years ago (2016-12-13 07:16:09 UTC) #15
I retested with a full official build - everything but PGO. I think this
represents reality.

Turning off the hack (re-enabling sizeddealloc) costs 190 (metric) KB, mostly in
code size. I checked for changes in large global variables and saw none. So, it
is probably something about sizedDealloc that makes the code larger. Odd.

If we need/want the feature then we should do it, but it's unfortunate that it
moves things in the wrong direction.

Powered by Google App Engine
This is Rietveld 408576698