diff options
| author | 2016-02-01 20:15:11 -0800 | |
|---|---|---|
| committer | 2016-02-02 15:43:05 -0800 | |
| commit | dfe02f6aafee264478d510b9742ee266ea52e8a8 (patch) | |
| tree | d56729901410de2b5cea9395c4686b49c38b245d /runtime/mirror/array.h | |
| parent | 85fdcda926fbab0e5a7b3e8b3541f5d225b2bcdb (diff) | |
Fix remaining read barrier issues in image relocation
Added a way to disallow read barriers, this makes it easy to find
the issues.
Bug: 26786304
Change-Id: I7ebb50832686d03e096a979aae9741239371683f
Diffstat (limited to 'runtime/mirror/array.h')
| -rw-r--r-- | runtime/mirror/array.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/runtime/mirror/array.h b/runtime/mirror/array.h index 2bd6c5b9a1..9a21ec255c 100644 --- a/runtime/mirror/array.h +++ b/runtime/mirror/array.h @@ -183,7 +183,9 @@ class MANAGED PrimitiveArray : public Array { // Either an IntArray or a LongArray. class PointerArray : public Array { public: - template<typename T> + template<typename T, + VerifyObjectFlags kVerifyFlags = kVerifyNone, + ReadBarrierOption kReadBarrierOption = kWithReadBarrier> T GetElementPtrSize(uint32_t idx, size_t ptr_size) SHARED_REQUIRES(Locks::mutator_lock_); @@ -196,7 +198,9 @@ class PointerArray : public Array { // Fixup the pointers in the dest arrays by passing our pointers through the visitor. Only copies // to dest if visitor(source_ptr) != source_ptr. - template <typename Visitor> + template <VerifyObjectFlags kVerifyFlags = kVerifyNone, + ReadBarrierOption kReadBarrierOption = kWithReadBarrier, + typename Visitor> void Fixup(mirror::PointerArray* dest, size_t pointer_size, const Visitor& visitor) SHARED_REQUIRES(Locks::mutator_lock_); }; |