android: Add a tool to put frequently-used code in the middle.

This reduces binary size (and memory footprint) by >300kB on ARM for
libchrome.so, by reducing the number of long relative jump thunks from
45k to 15k, with each thunk being 12 bytes.
See the attached bug for details.

This CL only adds the script to generate a new orderfile, a forthcoming
CL will include this in the build.

Bug: 801601
Change-Id: I2b37e032762df8a9ecaa1c03b602a89453d41b97
Reviewed-on: https://chromium-review.googlesource.com/899742
Commit-Queue: Benoit L <lizeb@chromium.org>
Reviewed-by: Matthew Cary <mattcary@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Reviewed-by: Egor Pasko <pasko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#537034}

CrOS-Libchrome-Original-Commit: a97185b1e0c031cc0aef4f3f759007f02abb5555
2 files changed
tree: 7889f97e348973a4b3ecaa13f1d8aa661be18fd8
  1. base/
  2. build/
  3. components/
  4. dbus/
  5. device/
  6. ipc/
  7. mojo/
  8. testing/
  9. third_party/
  10. ui/