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

Issue 410933004: Extend relocation packing to cover arm64. (Closed)

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

Description

Extend relocation packing to cover arm64. Add new delta encoder and signed LEB128 classes to pack relocations with addends. Add associated unit tests. Add packer functions to handle vectors of ELF::Rela structures (relocations with addends). Update unit tests. Templatize elf_file functions to provide versions that handle both ELF::Rel and ELF::Rela. Provide 'golden' 64 bit ARM unpacked and packed test data for elf_file_unittest. Add gyp targets, actions, and a helper python script to easily produce these test data files from source using NDK toolchains. Tidy terminology in comments, update --help output, and update the README.TXT. BUG=385553 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=286503

Patch Set 1 #

Patch Set 2 : Small fix to README.TXT #

Patch Set 3 : Script 'golden' test data generation #

Total comments: 18

Patch Set 4 : Small fixes #

Patch Set 5 : Rebase to master #

Patch Set 6 : Review feedback update #

Patch Set 7 : Return after NOTREACHED to silence clang. #

Patch Set 8 : Rebase to master #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1488 lines, -319 lines) Patch
M tools/relocation_packer/README.TXT View 1 2 3 4 5 4 chunks +53 lines, -20 lines 0 comments Download
M tools/relocation_packer/relocation_packer.gyp View 1 2 3 chunks +71 lines, -2 lines 0 comments Download
A tools/relocation_packer/src/delta_encoder.h View 1 2 3 4 5 1 chunk +80 lines, -0 lines 0 comments Download
A tools/relocation_packer/src/delta_encoder.cc View 1 2 3 4 5 1 chunk +72 lines, -0 lines 0 comments Download
A tools/relocation_packer/src/delta_encoder_unittest.cc View 1 chunk +150 lines, -0 lines 0 comments Download
M tools/relocation_packer/src/elf_file.h View 1 2 3 5 chunks +58 lines, -32 lines 0 comments Download
M tools/relocation_packer/src/elf_file.cc View 1 2 3 4 5 6 29 chunks +243 lines, -140 lines 0 comments Download
M tools/relocation_packer/src/elf_file_unittest.cc View 2 chunks +15 lines, -2 lines 0 comments Download
M tools/relocation_packer/src/elf_traits.h View 4 chunks +13 lines, -11 lines 0 comments Download
M tools/relocation_packer/src/leb128.h View 1 chunk +2 lines, -2 lines 0 comments Download
M tools/relocation_packer/src/main.cc View 1 2 3 4 5 6 3 chunks +57 lines, -24 lines 0 comments Download
M tools/relocation_packer/src/packer.h View 1 2 3 4 5 2 chunks +36 lines, -9 lines 0 comments Download
M tools/relocation_packer/src/packer.cc View 1 2 3 4 5 3 chunks +64 lines, -6 lines 0 comments Download
M tools/relocation_packer/src/packer_unittest.cc View 3 chunks +133 lines, -2 lines 0 comments Download
M tools/relocation_packer/src/run_length_encoder.h View 3 chunks +23 lines, -22 lines 0 comments Download
M tools/relocation_packer/src/run_length_encoder.cc View 1 2 3 4 5 3 chunks +11 lines, -7 lines 0 comments Download
A + tools/relocation_packer/src/sleb128.h View 3 chunks +21 lines, -20 lines 0 comments Download
A tools/relocation_packer/src/sleb128.cc View 1 chunk +95 lines, -0 lines 0 comments Download
A tools/relocation_packer/src/sleb128_unittest.cc View 1 chunk +166 lines, -0 lines 0 comments Download
M tools/relocation_packer/test_data/elf_file_unittest_relocs.cc View 1 2 1 chunk +2 lines, -20 lines 0 comments Download
D tools/relocation_packer/test_data/elf_file_unittest_relocs.so View Binary file 0 comments Download
D tools/relocation_packer/test_data/elf_file_unittest_relocs_packed.so View 1 2 3 4 Binary file 0 comments Download
A tools/relocation_packer/test_data/generate_elf_file_unittest_relocs.py View 1 2 1 chunk +88 lines, -0 lines 0 comments Download
A tools/relocation_packer/test_data/generate_elf_file_unittest_relocs.sh View 1 2 1 chunk +35 lines, -0 lines 0 comments Download

Messages

Total messages: 13 (0 generated)
simonb (inactive)
6 years, 5 months ago (2014-07-23 16:15:53 UTC) #1
rmcilroy
lgtm, thanks! https://codereview.chromium.org/410933004/diff/40001/tools/relocation_packer/README.TXT File tools/relocation_packer/README.TXT (right): https://codereview.chromium.org/410933004/diff/40001/tools/relocation_packer/README.TXT#newcode8 tools/relocation_packer/README.TXT:8: Packing uses combinations of run length encoding, ...
6 years, 4 months ago (2014-07-28 10:08:44 UTC) #2
simonb (inactive)
Thanks. Items addressed in patch set 6. https://codereview.chromium.org/410933004/diff/40001/tools/relocation_packer/README.TXT File tools/relocation_packer/README.TXT (right): https://codereview.chromium.org/410933004/diff/40001/tools/relocation_packer/README.TXT#newcode8 tools/relocation_packer/README.TXT:8: Packing uses ...
6 years, 4 months ago (2014-07-28 12:20:56 UTC) #3
rmcilroy
lgtm
6 years, 4 months ago (2014-07-28 15:33:40 UTC) #4
simonb (inactive)
The CQ bit was checked by simonb@chromium.org
6 years, 4 months ago (2014-07-28 17:29:48 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/simonb@chromium.org/410933004/100001
6 years, 4 months ago (2014-07-28 17:31:48 UTC) #6
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: android_clang_dbg on tryserver.chromium.linux ...
6 years, 4 months ago (2014-07-28 20:37:15 UTC) #7
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 4 months ago (2014-07-28 20:45:43 UTC) #8
commit-bot: I haz the power
Try jobs failed on following builders: android_clang_dbg on tryserver.chromium.linux (http://build.chromium.org/p/tryserver.chromium.linux/builders/android_clang_dbg/builds/517) chromium_presubmit on tryserver.chromium.linux (http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/347)
6 years, 4 months ago (2014-07-28 20:45:44 UTC) #9
simonb (inactive)
Unit test shared libraries landed separately: https://codereview.chromium.org/427793002/
6 years, 4 months ago (2014-07-30 10:10:20 UTC) #10
simonb (inactive)
The CQ bit was checked by simonb@chromium.org
6 years, 4 months ago (2014-07-30 10:11:22 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/simonb@chromium.org/410933004/140001
6 years, 4 months ago (2014-07-30 10:12:21 UTC) #12
commit-bot: I haz the power
6 years, 4 months ago (2014-07-30 13:59:49 UTC) #13
Message was sent while issue was closed.
Change committed as 286503

Powered by Google App Engine
This is Rietveld 408576698