summaryrefslogtreecommitdiff
path: root/compiler/optimizing/codegen_test_utils.h
diff options
context:
space:
mode:
authorVladimir Marko <vmarko@google.com>2018-07-25 15:42:46 +0100
committerVladimir Marko <vmarko@google.com>2018-08-03 08:59:07 +0000
commit3232dbb6df866985089b13a36c56e2b39dd473ab (patch)
tree055f3e8888bfb3cfd072a981e4733cfaad7b202c /compiler/optimizing/codegen_test_utils.h
parentb27d874ebc0c067d96994a6ebe3c10eaeb2e4a75 (diff)
Do not save/restore regs in ClinitCheck slow path.
The entrypoint is kSaveEverything, so the only register that needs to be saved is the argument/return value register. The size of the aosp_taimen-userdebug prebuilts: - before: arm/boot*.oat: 16811692 arm64/boot*.oat: 19801032 oat/arm64/services.odex: 20232208 - after: arm/boot*.oat: 16798804 (-12.6KiB, -0.08%) arm64/boot*.oat: 19804392 (+3.3KiB, +0.02%) oat/arm64/services.odex: 20227784 (-4.3KiB, -0.02%) Note that though there is less code, the metadata for the arm64/boot*.oat outweighs the code size reduction because of the register map encoding as value+shift introduced in https://android-review.googlesource.com/695682 which it's ill-suited for kSaveEverything entrypoints. We should reconsider that encoding. Test: m test-art-host-gtest Test: testrunner.py --host --optimizing Test: Pixel 2 XL boots. Test: testrunner.py --target --optimizing Change-Id: I5cd1deb90332a3b88a0a59d87925c557d9bff1ab
Diffstat (limited to 'compiler/optimizing/codegen_test_utils.h')
0 files changed, 0 insertions, 0 deletions