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

Issue 829442 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: May 2018
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug
Build-Toolchain



Sign in to add a comment

Turn on generation of SHT_RELR sections by default

Project Member Reported by rahulchaudhry@chromium.org, Apr 5 2018

Issue description

Proposal for adding SHT_RELR sections in generic-abi is at https://groups.google.com/forum/#!topic/generic-abi/bX460iggiKg

Support for handling SHT_RELR sections was added to the glibc dynamic loader in https://chromium-review.googlesource.com/965112

Support for generating SHT_RELR sections is included in the binutils gold linker we import from AOSP: https://android.googlesource.com/toolchain/binutils/

Now we need to turn this on to get the benefits:

    x86_64 (caroline-release)  Original        SHT_RELR       Savings
        Size of chrome         167.4 MB        152.8 MB     15,327,160 bytes (8.73%)
        Size of rootfs        1690.9 MB       1665.6 MB     26,517,504 bytes
    
    arm (kevin-release)        Original        SHT_RELR        Savings
        Size of chrome          92.1 MB         87.1 MB      5,173,196 bytes (5.36%)
        Size of rootfs        1422.6 MB       1415.5 MB      7,446,528 bytes

 
Project Member

Comment 1 by bugdroid1@chromium.org, Apr 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/ffe3f36291f8ab584781faf9a8a9986ba1fe4fd1

commit ffe3f36291f8ab584781faf9a8a9986ba1fe4fd1
Author: Rahul Chaudhry <rahulchaudhry@chromium.org>
Date: Tue Apr 17 22:47:38 2018

sys-devel/binutils: generate SHT_RELR sections by default.

Proposal for adding SHT_RELR sections in generic-abi is at
https://groups.google.com/forum/#!topic/generic-abi/bX460iggiKg

SHT_RELR sections are supported for arm, aarch64, and x86_64 targets.
This change turns on '--experimental-use-relr' gold flag by default.

Test matrix: https://docs.google.com/spreadsheets/d/17qExxGbU6a2S0KwlVN49xqKFJKhL1yN4LgY2BWZOjtI/edit?usp=sharing

Space savings:

x86_64 (caroline-release)  Original        SHT_RELR       Savings
    Size of chrome         167.4 MB        152.8 MB     15,327,160 bytes (8.73%)
    Size of rootfs        1690.9 MB       1665.6 MB     26,517,504 bytes

arm (kevin-release)        Original        SHT_RELR        Savings
    Size of chrome          92.1 MB         87.1 MB      5,173,196 bytes (5.36%)
    Size of rootfs        1422.6 MB       1415.5 MB      7,446,528 bytes

BUG= chromium:829442 
TEST=See test matrix.

Change-Id: I8685e5ff979a84763984e3647a762b74db977590
Reviewed-on: https://chromium-review.googlesource.com/967052
Commit-Ready: Rahul Chaudhry <rahulchaudhry@chromium.org>
Tested-by: Rahul Chaudhry <rahulchaudhry@chromium.org>
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>

[add] https://crrev.com/ffe3f36291f8ab584781faf9a8a9986ba1fe4fd1/sys-devel/binutils/files/binutils-2.27.0-smallpie.patch
[modify] https://crrev.com/ffe3f36291f8ab584781faf9a8a9986ba1fe4fd1/sys-devel/binutils/binutils-9999.ebuild
[modify] https://crrev.com/ffe3f36291f8ab584781faf9a8a9986ba1fe4fd1/sys-devel/gcc/gcc-9999.ebuild

Status: Fixed (was: Assigned)

Sign in to add a comment