summaryrefslogtreecommitdiff
path: root/tools/cpp-define-generator/offset_runtime.def
diff options
context:
space:
mode:
author Vladimir Marko <vmarko@google.com> 2016-07-28 12:01:51 +0100
committer Vladimir Marko <vmarko@google.com> 2016-08-04 14:51:52 +0100
commit952dbb19cd094b8bfb01dbb33e0878db429e499a (patch)
tree82932c2b00245042e2c129f3d4133f6431657da3 /tools/cpp-define-generator/offset_runtime.def
parentdf638c66d1f385d4e217b2ab22c5e48a7eefdef4 (diff)
Change suspend entrypoint to save all registers.
We avoid the need to save/restore registers in slow paths and get significant code size savings. On Nexus 9, AOSP: - 32-bit boot.oat: -1.4MiB (-1.9%) - 64-bit boot.oat: -2.0MiB (-2.3%) - other 32-bit oat files in dalvik-cache: -200KiB (-1.7%) - other 64-bit oat files in dalvik-cache: -2.3MiB (-2.1%) Test: Run ART test suite on host and Nexus 9 with gc stress. Bug: 30212852 Change-Id: I7015afc1e7d30341618c9200a3dc9ae277afd134
Diffstat (limited to 'tools/cpp-define-generator/offset_runtime.def')
-rw-r--r--tools/cpp-define-generator/offset_runtime.def2
1 files changed, 2 insertions, 0 deletions
diff --git a/tools/cpp-define-generator/offset_runtime.def b/tools/cpp-define-generator/offset_runtime.def
index b327ca3a96..123992f473 100644
--- a/tools/cpp-define-generator/offset_runtime.def
+++ b/tools/cpp-define-generator/offset_runtime.def
@@ -34,6 +34,8 @@ DEFINE_RUNTIME_CALLEE_SAVE_OFFSET(SAVE_ALL, kSaveAll)
DEFINE_RUNTIME_CALLEE_SAVE_OFFSET(REFS_ONLY, kRefsOnly)
// Offset of field Runtime::callee_save_methods_[kRefsAndArgs]
DEFINE_RUNTIME_CALLEE_SAVE_OFFSET(REFS_AND_ARGS, kRefsAndArgs)
+// Offset of field Runtime::callee_save_methods_[kSaveEverything]
+DEFINE_RUNTIME_CALLEE_SAVE_OFFSET(SAVE_EVERYTHING, kSaveEverything)
#undef DEFINE_RUNTIME_CALLEE_SAVE_OFFSET
#include "common_undef.def" // undef DEFINE_OFFSET_EXPR