New issue
Advanced search Search tips

Issue 912780 link

Starred by 2 users

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Feature
Build-Toolchain


Sign in to add a comment

Improve function layout of Chrome with lld

Project Member Reported by tcwang@chromium.org, Dec 7

Issue description

Use this bug as a main thread to keep track of the projects of improving function layout of Chrome with lld linker.
 
Blockedon: 912781
Blockedon: 912782
Blockedon: 913713
Blockedon: 913718
Description: Show this description
Project Member

Comment 6 by bugdroid1@chromium.org, Dec 18

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

commit b24528659b9430458640d23bb8383762fbd2395a
Author: Tiancong Wang <tcwang@google.com>
Date: Tue Dec 18 16:27:10 2018

lld: Add a local lld patch to reorder .text.hot before .text for lld.

lld by default won't separate symbols marked as hot from text section.
By default, using -z keep-text-section-prefix will group symbols with prefix and order them
as .text, .text.hot, .text.startup, .text.exit, .text.unlikely.

The lld patch re-orders the .text.hot section before .text, matching the ordering in gold:
text.hot, .text, .text.startup, .text.exit, .text.unlikely.

The lld patch also includes a test.

Change the lld emerge file to uprev and build a new lld with the patch

TEST=lld unit test and tested on Caroline-board.
BUG=chromium:912781, chromium:912780

Change-Id: I4ac5af51c46893ee4cfe2ef8e388d104e6bad5b2
Reviewed-on: https://chromium-review.googlesource.com/1378594
Commit-Ready: Luis Lozano <llozano@chromium.org>
Tested-by: Luis Lozano <llozano@chromium.org>
Reviewed-by: Luis Lozano <llozano@chromium.org>

[add] https://crrev.com/b24528659b9430458640d23bb8383762fbd2395a/sys-devel/lld/files/lld-8.0-reorder-hotsection.patch
[modify] https://crrev.com/b24528659b9430458640d23bb8383762fbd2395a/sys-devel/lld/lld-8.0_pre339409.ebuild
[modify] https://crrev.com/b24528659b9430458640d23bb8383762fbd2395a/chromeos-base/chromeos-chrome/chromeos-chrome-9999.ebuild
[rename] https://crrev.com/b24528659b9430458640d23bb8383762fbd2395a/sys-devel/lld/lld-8.0_pre339409-r3.ebuild

Sign in to add a comment