summaryrefslogtreecommitdiff
path: root/compiler/optimizing/intrinsic_objects.h
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/optimizing/intrinsic_objects.h')
-rw-r--r--compiler/optimizing/intrinsic_objects.h21
1 files changed, 10 insertions, 11 deletions
diff --git a/compiler/optimizing/intrinsic_objects.h b/compiler/optimizing/intrinsic_objects.h
index c9ae449467..52a6b81f0e 100644
--- a/compiler/optimizing/intrinsic_objects.h
+++ b/compiler/optimizing/intrinsic_objects.h
@@ -52,14 +52,13 @@ template <class T> class ObjectArray;
class IntrinsicObjects {
public:
enum class PatchType {
- kIntegerValueOfObject,
- kIntegerValueOfArray,
+ kValueOfObject,
+ kValueOfArray,
- kLast = kIntegerValueOfArray
+ kLast = kValueOfArray
};
static uint32_t EncodePatch(PatchType patch_type, uint32_t index = 0u) {
- DCHECK(patch_type == PatchType::kIntegerValueOfObject || index == 0u);
return PatchTypeField::Encode(static_cast<uint32_t>(patch_type)) | IndexField::Encode(index);
}
@@ -94,13 +93,6 @@ class IntrinsicObjects {
return kNumberOfBoxedCaches;
}
- private:
- static constexpr size_t kPatchTypeBits =
- MinimumBitsToStore(static_cast<uint32_t>(PatchType::kLast));
- static constexpr size_t kIndexBits = BitSizeOf<uint32_t>() - kPatchTypeBits;
- using PatchTypeField = BitField<uint32_t, 0u, kPatchTypeBits>;
- using IndexField = BitField<uint32_t, kPatchTypeBits, kIndexBits>;
-
EXPORT static ObjPtr<mirror::Object> GetValueOfObject(
ObjPtr<mirror::ObjectArray<mirror::Object>> boot_image_live_objects,
size_t start_index,
@@ -109,6 +101,13 @@ class IntrinsicObjects {
EXPORT static MemberOffset GetValueOfArrayDataOffset(
ObjPtr<mirror::ObjectArray<mirror::Object>> boot_image_live_objects,
size_t start_index) REQUIRES_SHARED(Locks::mutator_lock_);
+
+ private:
+ static constexpr size_t kPatchTypeBits =
+ MinimumBitsToStore(static_cast<uint32_t>(PatchType::kLast));
+ static constexpr size_t kIndexBits = BitSizeOf<uint32_t>() - kPatchTypeBits;
+ using PatchTypeField = BitField<uint32_t, 0u, kPatchTypeBits>;
+ using IndexField = BitField<uint32_t, kPatchTypeBits, kIndexBits>;
};
} // namespace art