summaryrefslogtreecommitdiff
path: root/runtime/mirror/array-inl.h
diff options
context:
space:
mode:
author Vladimir Marko <vmarko@google.com> 2015-05-19 18:08:00 +0100
committer Vladimir Marko <vmarko@google.com> 2015-05-26 19:33:33 +0100
commit41b175aba41c9365a1c53b8a1afbd17129c87c14 (patch)
tree5c82606d39543fb932ddc0674694fc0758b1a866 /runtime/mirror/array-inl.h
parent54d65738eecc1fa79ed528ff2f6b9b4f7a4743be (diff)
ART: Clean up arm64 kNumberOfXRegisters usage.
Avoid undefined behavior for arm64 stemming from 1u << 32 in loops with upper bound kNumberOfXRegisters. Create iterators for enumerating bits in an integer either from high to low or from low to high and use them for <arch>Context::FillCalleeSaves() on all architectures. Refactor runtime/utils.{h,cc} by moving all bit-fiddling functions to runtime/base/bit_utils.{h,cc} (together with the new bit iterators) and all time-related functions to runtime/base/time_utils.{h,cc}. Improve test coverage and fix some corner cases for the bit-fiddling functions. Bug: 13925192 (cherry picked from commit 80afd02024d20e60b197d3adfbb43cc303cf29e0) Change-Id: I905257a21de90b5860ebe1e39563758f721eab82
Diffstat (limited to 'runtime/mirror/array-inl.h')
-rw-r--r--runtime/mirror/array-inl.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/runtime/mirror/array-inl.h b/runtime/mirror/array-inl.h
index 8b3418d6be..e93717e6f3 100644
--- a/runtime/mirror/array-inl.h
+++ b/runtime/mirror/array-inl.h
@@ -19,11 +19,13 @@
#include "array.h"
+#include "base/bit_utils.h"
+#include "base/logging.h"
#include "base/stringprintf.h"
+#include "base/casts.h"
#include "class.h"
#include "gc/heap-inl.h"
#include "thread.h"
-#include "utils.h"
namespace art {
namespace mirror {