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

Issue 341483002: Preserve section and data alignment in libchrome.<ver>.so. (Closed)

Created:
6 years, 6 months ago by simonb (inactive)
Modified:
6 years, 6 months ago
Reviewers:
simonb1, rmcilroy
CC:
chromium-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

Preserve section and data alignment in libchrome.<ver>.so. Current packing preserves 4-byte alignment (in practice, 8-byte alignment, because a whole number of R_ARM_RELATIVE relocations is removed). However this is insufficient for some NEON vector instructions. For example: 18b0c: f42c026f vld1.16 {d0-d3}, [ip :128] requires a 16-byte alignment, and fails with SIGBUS if not aligned. The NDK toolchain aligns .text and .data to 256 bytes. Retain this by padding the non-packed (non-R_ARM_RELATIVE) relocations with sufficient R_ARM_NONE entries so that 256 byte alignment is preserved. Update test data so that enough R_ARM_RELATIVE entries are present for packing to reduce file size. BUG=385553 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=278105

Patch Set 1 #

Total comments: 7

Patch Set 2 : Review feedback changes #

Unified diffs Side-by-side diffs Delta from patch set Stats (+88 lines, -30 lines) Patch
M tools/relocation_packer/src/elf_file.cc View 1 11 chunks +65 lines, -30 lines 0 comments Download
M tools/relocation_packer/test_data/elf_file_unittest_relocs.cc View 1 chunk +23 lines, -0 lines 0 comments Download
M tools/relocation_packer/test_data/elf_file_unittest_relocs.so View Binary file 0 comments Download
M tools/relocation_packer/test_data/elf_file_unittest_relocs_packed.so View Binary file 0 comments Download

Messages

Total messages: 11 (0 generated)
simonb1
6 years, 6 months ago (2014-06-17 11:39:51 UTC) #1
rmcilroy
lgtm if comments are addressed (or are not applicable). https://codereview.chromium.org/341483002/diff/1/tools/relocation_packer/src/elf_file.cc File tools/relocation_packer/src/elf_file.cc (right): https://codereview.chromium.org/341483002/diff/1/tools/relocation_packer/src/elf_file.cc#newcode828 tools/relocation_packer/src/elf_file.cc:828: ...
6 years, 6 months ago (2014-06-18 09:52:29 UTC) #2
simonb1
Feedback addressed in patch set 2. Thanks for the review. https://codereview.chromium.org/341483002/diff/1/tools/relocation_packer/src/elf_file.cc File tools/relocation_packer/src/elf_file.cc (right): https://codereview.chromium.org/341483002/diff/1/tools/relocation_packer/src/elf_file.cc#newcode828 ...
6 years, 6 months ago (2014-06-18 11:30:20 UTC) #3
simonb1
The CQ bit was checked by simonb@google.com
6 years, 6 months ago (2014-06-18 11:30:52 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/simonb@chromium.org/341483002/20001
6 years, 6 months ago (2014-06-18 11:32:22 UTC) #5
rmcilroy
The CQ bit was unchecked by rmcilroy@chromium.org
6 years, 6 months ago (2014-06-18 13:01:01 UTC) #6
rmcilroy
https://codereview.chromium.org/341483002/diff/1/tools/relocation_packer/src/elf_file.cc File tools/relocation_packer/src/elf_file.cc (right): https://codereview.chromium.org/341483002/diff/1/tools/relocation_packer/src/elf_file.cc#newcode837 tools/relocation_packer/src/elf_file.cc:837: ResizeSection(elf_, rel_dyn_section_, bytes); On 2014/06/18 11:30:19, simonb1 wrote: > ...
6 years, 6 months ago (2014-06-18 13:01:07 UTC) #7
simonb1
https://codereview.chromium.org/341483002/diff/1/tools/relocation_packer/src/elf_file.cc File tools/relocation_packer/src/elf_file.cc (right): https://codereview.chromium.org/341483002/diff/1/tools/relocation_packer/src/elf_file.cc#newcode844 tools/relocation_packer/src/elf_file.cc:844: RewriteSectionData(data, packed_data, packed_bytes); On 2014/06/18 13:01:07, rmcilroy wrote: > ...
6 years, 6 months ago (2014-06-18 13:29:09 UTC) #8
simonb1
The CQ bit was checked by simonb@google.com
6 years, 6 months ago (2014-06-18 13:29:25 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/simonb@chromium.org/341483002/20001
6 years, 6 months ago (2014-06-18 13:30:55 UTC) #10
commit-bot: I haz the power
6 years, 6 months ago (2014-06-18 17:01:11 UTC) #11
Message was sent while issue was closed.
Change committed as 278105

Powered by Google App Engine
This is Rietveld 408576698