diff options
Diffstat (limited to 'runtime/art_method.h')
| -rw-r--r-- | runtime/art_method.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/runtime/art_method.h b/runtime/art_method.h index ce8e8ac612..cec2ec4df2 100644 --- a/runtime/art_method.h +++ b/runtime/art_method.h @@ -667,6 +667,10 @@ class ArtMethod FINAL { return hotness_count_; } + static MemberOffset HotnessCountOffset() { + return MemberOffset(OFFSETOF_MEMBER(ArtMethod, hotness_count_)); + } + ArrayRef<const uint8_t> GetQuickenedInfo() REQUIRES_SHARED(Locks::mutator_lock_); // Returns the method header for the compiled code containing 'pc'. Note that runtime @@ -727,6 +731,14 @@ class ArtMethod FINAL { ALWAYS_INLINE CodeItemInstructionAccessor DexInstructions() REQUIRES_SHARED(Locks::mutator_lock_); + // Returns the dex code item data section of the DexFile for the art method. + ALWAYS_INLINE CodeItemDataAccessor DexInstructionData() + REQUIRES_SHARED(Locks::mutator_lock_); + + // Returns the dex code item debug info section of the DexFile for the art method. + ALWAYS_INLINE CodeItemDebugInfoAccessor DexInstructionDebugInfo() + REQUIRES_SHARED(Locks::mutator_lock_); + protected: // Field order required by test "ValidateFieldOrderOfJavaCppUnionClasses". // The class we are a part of. @@ -753,7 +765,7 @@ class ArtMethod FINAL { // ifTable. uint16_t method_index_; - // The hotness we measure for this method. Managed by the interpreter. Not atomic, as we allow + // The hotness we measure for this method. Not atomic, as we allow // missing increments: if the method is hot, we will see it eventually. uint16_t hotness_count_; @@ -846,6 +858,9 @@ class ArtMethod FINAL { } while (!access_flags_.compare_exchange_weak(old_access_flags, new_access_flags)); } + // Returns true if the given intrinsic is considered hidden. + bool IsHiddenIntrinsic(uint32_t ordinal); + DISALLOW_COPY_AND_ASSIGN(ArtMethod); // Need to use CopyFrom to deal with 32 vs 64 bits. }; |