New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 593696 link

Starred by 3 users

Issue metadata

Status: Untriaged
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 3
Type: Bug-Regression



Sign in to add a comment

base::Tuple -> std::tuple made content_shell debug binary size increase by 40MB

Reported by rog...@opera.com, Mar 10 2016

Issue description

Version: Cr-Commit-Position: refs/heads/master@{#374878} (50.0.2648.0)
OS: Linux

What steps will reproduce the problem?
(1) Compile content_shell in debug mode

What is the expected output? What do you see instead?
https://codereview.chromium.org/1673563002 had a big impact on binary size of debug builds. See data below for detailed info.

This causes problems when cross compiling for MIPS since it barfs when linking due to that content_message_generator.o has too many sections/symbols or something[1]. The issue goes away if I change from -O0 to -Os in debug build and that is likely also why I don't see any negative effects on release builds from this CL.

[1] relocation truncated to fit: R_MIPS_GOT16 against `no symbol'


Please use labels and text to provide additional information.
Data below collected from local Linux 64bit build using clang. 

Before the CL landed:
content_message_generator.o: 37075792 bytes (~35MB), .symtab contains 54202 entries.
content_shell: 2614280384 bytes (~2493MB)

After the CL landed:
content_message_generator.o: 50632696 bytes (~48MB), .symtab contains 74388 entries.
content_shell: 2656176696 bytes (~2533MB)
 

Comment 1 by most...@opera.com, Mar 10 2016

If we were to submit a CL that moved this file to a separate target, built with -Os in debug builds, would it be accepted?

Comment 2 by tzik@chromium.org, Mar 15 2016

Cc: tsepez@chromium.org
Components: Build
Status: Available (was: Untriaged)
Oh... I didn't aware the debug binary size. CCing tsepez@ as a IPC owner.
I think it's acceptable to split to a separate target.
But, is it enough to split the content_message_generator.{h,cc} to pieces instead of making separate target?

Comment 3 by rog...@opera.com, Mar 17 2016

Possibly, I tried to just split the .cc but that gave me no improvement. Splitting the .h appeared to be non-trivial so I did not manage to get something working to see what kind of effect it would haves. I might try a bit more later when I have more time to spare.
Project Member

Comment 4 by sheriffbot@chromium.org, Mar 17 2017

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been available for more than 365 days, and should be re-evaluated. Please re-triage this issue.
The Hotlist-Recharge-Cold label is applied for tracking purposes, and should not be removed after re-triaging the issue.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Components: -Internals

Sign in to add a comment