/art/runtime/ |
D | oat_quick_method_header.h | 32 class PACKED(4) OatQuickMethodHeader { 34 OatQuickMethodHeader(uint32_t code_info_offset = 0) { 38 static OatQuickMethodHeader* NterpMethodHeader; 42 static OatQuickMethodHeader* FromCodePointer(const void* code_ptr) { in FromCodePointer() 44 uintptr_t header = code - OFFSETOF_MEMBER(OatQuickMethodHeader, code_); in FromCodePointer() 48 return reinterpret_cast<OatQuickMethodHeader*>(header); in FromCodePointer() 51 static OatQuickMethodHeader* FromEntryPoint(const void* entry_point) { in FromEntryPoint() 56 return RoundUp(sizeof(OatQuickMethodHeader), GetInstructionSetAlignment(kRuntimeISA)); in InstructionAlignedSize() 59 OatQuickMethodHeader(const OatQuickMethodHeader&) = default; 60 OatQuickMethodHeader& operator=(const OatQuickMethodHeader&) = default;
|
D | oat_file-inl.h | 27 inline const OatQuickMethodHeader* OatFile::OatMethod::GetOatQuickMethodHeader() const { in GetOatQuickMethodHeader() 33 return reinterpret_cast<const OatQuickMethodHeader*>(code) - 1; in GetOatQuickMethodHeader() 37 const OatQuickMethodHeader* method_header = GetOatQuickMethodHeader(); in GetOatQuickMethodHeaderOffset() 49 return reinterpret_cast<const OatQuickMethodHeader*>(code)[-1].GetFrameInfo().FrameSizeInBytes(); in GetFrameSizeInBytes() 57 return reinterpret_cast<const OatQuickMethodHeader*>(code)[-1].GetFrameInfo().CoreSpillMask(); in GetCoreSpillMask() 65 return reinterpret_cast<const OatQuickMethodHeader*>(code)[-1].GetFrameInfo().FpSpillMask(); in GetFpSpillMask() 78 uint32_t offset = reinterpret_cast<const OatQuickMethodHeader*>(code)[-1].GetCodeInfoOffset(); in GetVmapTable() 90 return reinterpret_cast<const OatQuickMethodHeader*>(code)[-1].GetCodeSize(); in GetQuickCodeSize()
|
D | oat_quick_method_header.cc | 31 uint32_t OatQuickMethodHeader::ToDexPc(ArtMethod** frame, in ToDexPc() 59 uintptr_t OatQuickMethodHeader::ToNativeQuickPc(ArtMethod* method, in ToNativeQuickPc() 92 static inline OatQuickMethodHeader* GetNterpMethodHeader() { in GetNterpMethodHeader() 101 return reinterpret_cast<OatQuickMethodHeader*>(nterp_code_pointer - sizeof(OatQuickMethodHeader)); in GetNterpMethodHeader() 104 OatQuickMethodHeader* OatQuickMethodHeader::NterpMethodHeader = GetNterpMethodHeader(); 106 bool OatQuickMethodHeader::IsNterpMethodHeader() const { in IsNterpMethodHeader()
|
D | cha_test.cc | 31 #define METHOD_HEADER1 (reinterpret_cast<OatQuickMethodHeader*>(128u)) 32 #define METHOD_HEADER2 (reinterpret_cast<OatQuickMethodHeader*>(136u)) 33 #define METHOD_HEADER3 (reinterpret_cast<OatQuickMethodHeader*>(144u)) 61 std::unordered_set<OatQuickMethodHeader*> headers; in TEST_F()
|
D | cha.h | 88 typedef std::pair<ArtMethod*, OatQuickMethodHeader*> MethodAndMethodHeaderPair; 97 OatQuickMethodHeader* dependent_header) REQUIRES(Locks::cha_lock_); 110 const std::unordered_set<OatQuickMethodHeader*>& method_headers)
|
D | quick_exception_handler.h | 34 class OatQuickMethodHeader; variable 93 void SetHandlerMethodHeader(const OatQuickMethodHeader* handler_method_header) { in SetHandlerMethodHeader() 150 const OatQuickMethodHeader* handler_method_header_;
|
D | cha.cc | 37 OatQuickMethodHeader* dependent_header) { in AddDependency() 59 const std::unordered_set<OatQuickMethodHeader*>& method_headers) { in RemoveDependentsWithMethodHeaders() 189 const std::unordered_set<OatQuickMethodHeader*>& method_headers) in CHAStackVisitor() 209 const OatQuickMethodHeader* method_header = GetCurrentOatQuickMethodHeader(); in VisitFrame() 244 const std::unordered_set<OatQuickMethodHeader*>& method_headers_; 251 explicit CHACheckpoint(const std::unordered_set<OatQuickMethodHeader*>& method_headers) in CHACheckpoint() 275 const std::unordered_set<OatQuickMethodHeader*>& method_headers_; 637 std::unordered_set<OatQuickMethodHeader*> dependent_method_headers; in InvalidateSingleImplementationMethods() 645 std::vector<std::pair<ArtMethod*, OatQuickMethodHeader*>> headers; in InvalidateSingleImplementationMethods() 671 OatQuickMethodHeader* method_header = dependent.second; in InvalidateSingleImplementationMethods()
|
D | art_method.cc | 538 const OatQuickMethodHeader* ArtMethod::GetOatQuickMethodHeader(uintptr_t pc) { in GetOatQuickMethodHeader() 563 OatQuickMethodHeader* method_header = in GetOatQuickMethodHeader() 564 OatQuickMethodHeader::FromEntryPoint(existing_entry_point); in GetOatQuickMethodHeader() 571 if (OatQuickMethodHeader::NterpMethodHeader != nullptr && in GetOatQuickMethodHeader() 572 OatQuickMethodHeader::NterpMethodHeader->Contains(pc)) { in GetOatQuickMethodHeader() 573 return OatQuickMethodHeader::NterpMethodHeader; in GetOatQuickMethodHeader() 580 OatQuickMethodHeader* method_header = code_cache->LookupMethodHeader(pc, this); in GetOatQuickMethodHeader() 607 << " size: " << OatQuickMethodHeader::FromEntryPoint(existing_entry_point)->GetCodeSize() in GetOatQuickMethodHeader() 613 return OatQuickMethodHeader::FromEntryPoint(existing_entry_point); in GetOatQuickMethodHeader() 621 OatQuickMethodHeader* method_header = OatQuickMethodHeader::FromEntryPoint(oat_entry_point); in GetOatQuickMethodHeader()
|
D | stack.h | 39 class OatQuickMethodHeader; variable 292 const OatQuickMethodHeader* GetCurrentOatQuickMethodHeader() const { in GetCurrentOatQuickMethodHeader() 356 const OatQuickMethodHeader* cur_oat_quick_method_header_; 368 mutable std::pair<const OatQuickMethodHeader*, CodeInfo> cur_inline_info_;
|
D | stack_map.h | 35 class OatQuickMethodHeader; variable 296 ALWAYS_INLINE explicit CodeInfo(const OatQuickMethodHeader* header); 299 static CodeInfo DecodeGcMasksOnly(const OatQuickMethodHeader* header); 300 static CodeInfo DecodeInlineInfoOnly(const OatQuickMethodHeader* header);
|
D | stack.cc | 86 const OatQuickMethodHeader* header = GetCurrentOatQuickMethodHeader(); in GetCurrentInlineInfo() 95 const OatQuickMethodHeader* header = GetCurrentOatQuickMethodHeader(); in GetCurrentStackMap() 274 const OatQuickMethodHeader* method_header = GetCurrentOatQuickMethodHeader(); in GetVRegFromOptimizedCode() 681 uint32_t code_size = OatQuickMethodHeader::FromEntryPoint(code)->GetCodeSize(); in AssertPcIsWithinQuickCode() 842 OatQuickMethodHeader::FromEntryPoint(existing_entry_point); in WalkStack() 846 cur_oat_quick_method_header_ = OatQuickMethodHeader::FromEntryPoint(code); in WalkStack() 852 cur_oat_quick_method_header_ = OatQuickMethodHeader::FromCodePointer(code); in WalkStack()
|
D | stack_map.cc | 61 CodeInfo::CodeInfo(const OatQuickMethodHeader* header) in CodeInfo() 64 CodeInfo CodeInfo::DecodeGcMasksOnly(const OatQuickMethodHeader* header) { in DecodeGcMasksOnly() 73 CodeInfo CodeInfo::DecodeInlineInfoOnly(const OatQuickMethodHeader* header) { in DecodeInlineInfoOnly()
|
D | quick_exception_handler.cc | 323 const OatQuickMethodHeader* GetSingleFrameDeoptQuickMethodHeader() const { in GetSingleFrameDeoptQuickMethodHeader() 458 const OatQuickMethodHeader* method_header = GetCurrentOatQuickMethodHeader(); in HandleOptimizingDeoptimization() 550 const OatQuickMethodHeader* single_frame_deopt_quick_method_header_;
|
D | oat_file.h | 49 class OatQuickMethodHeader; variable 205 const OatQuickMethodHeader* GetOatQuickMethodHeader() const;
|
/art/test/566-polymorphic-inlining/ |
D | polymorphic_inline.cc | 35 OatQuickMethodHeader* header = nullptr; in do_checks() 41 OatQuickMethodHeader::FromEntryPoint(pc)->GetOptimizedCodeInfoPtr())) { in do_checks() 42 header = OatQuickMethodHeader::FromEntryPoint(pc); in do_checks()
|
/art/runtime/jit/ |
D | jit_code_cache.cc | 126 DCHECK(entrypoint == OatQuickMethodHeader::FromCodePointer(GetCode())->GetEntryPoint()); in UpdateEntryPoints() 338 OatQuickMethodHeader* method_header = OatQuickMethodHeader::FromCodePointer(code_ptr); in GetSavedEntryPointOfPreCompiledMethod() 356 return reinterpret_cast<uintptr_t>(code) - RoundUp(sizeof(OatQuickMethodHeader), alignment); in FromCodeToAllocation() 361 return reinterpret_cast<const void*>(alloc + RoundUp(sizeof(OatQuickMethodHeader), alignment)); in FromAllocationToCode() 392 OatQuickMethodHeader* method_header = OatQuickMethodHeader::FromCodePointer(code_ptr); in GetRootTable() 454 if (OatQuickMethodHeader::FromCodePointer(code_ptr)->IsOptimized()) { in FreeCodeAndData() 462 const std::unordered_set<OatQuickMethodHeader*>& method_headers) { in FreeAllMethodHeaders() 474 for (const OatQuickMethodHeader* method_header : method_headers) { in FreeAllMethodHeaders() 512 std::unordered_set<OatQuickMethodHeader*> method_headers; in RemoveMethodsIn() 522 method_headers.insert(OatQuickMethodHeader::FromCodePointer(it->second.GetCode())); in RemoveMethodsIn() [all …]
|
D | jit_code_cache.h | 47 class OatQuickMethodHeader; variable 289 OatQuickMethodHeader* LookupMethodHeader(uintptr_t pc, ArtMethod* method) 293 OatQuickMethodHeader* LookupOsrMethodHeader(ArtMethod* method) 337 void InvalidateCompiledCodeFor(ArtMethod* method, const OatQuickMethodHeader* code) 423 void FreeAllMethodHeaders(const std::unordered_set<OatQuickMethodHeader*>& method_headers)
|
D | jit_memory_region.cc | 364 size_t header_size = OatQuickMethodHeader::InstructionAlignedSize(); in CommitCode() 382 OatQuickMethodHeader* method_header = in CommitCode() 383 OatQuickMethodHeader::FromCodePointer(w_memory + header_size); in CommitCode() 384 new (method_header) OatQuickMethodHeader((stack_map != nullptr) ? result - stack_map : 0u); in CommitCode()
|
/art/test/570-checker-osr/ |
D | osr.cc | 68 const OatQuickMethodHeader* header = in Java_Main_isInOsrCode() 90 const OatQuickMethodHeader* header = in Java_Main_isInInterpreter()
|
/art/dex2oat/linker/arm64/ |
D | relative_patcher_arm64_test.cc | 117 kTrampolineSize + CodeAlignmentSize(kTrampolineSize) + sizeof(OatQuickMethodHeader); in Create2MethodsWithGap() 124 const uint32_t gap_end = last_method_offset - sizeof(OatQuickMethodHeader); in Create2MethodsWithGap() 140 chunk_size - CodeAlignmentSize(chunk_start) - sizeof(OatQuickMethodHeader); in Create2MethodsWithGap() 163 CHECK_EQ(last_result.second, header_offset + sizeof(OatQuickMethodHeader)); in Create2MethodsWithGap() 431 kTrampolineSize + CodeAlignmentSize(kTrampolineSize) + sizeof(OatQuickMethodHeader); in TestAdrpInsn2Ldr() 481 kTrampolineSize + CodeAlignmentSize(kTrampolineSize) + sizeof(OatQuickMethodHeader); in TestAdrpInsn2Add() 736 if (sizeof(OatQuickMethodHeader) < kArm64Alignment) { in TEST_F() 748 method_after_thunk_offset - sizeof(OatQuickMethodHeader); in TEST_F() 1158 1 * MB - RoundUp(raw_code1.size() + sizeof(OatQuickMethodHeader), kArm64Alignment); in TEST_F() 1173 1 * MB - RoundUp(thunk_size + sizeof(OatQuickMethodHeader), kArm64Alignment) in TEST_F() [all …]
|
/art/dex2oat/linker/arm/ |
D | relative_patcher_thumb2_test.cc | 150 kTrampolineSize + CodeAlignmentSize(kTrampolineSize) + sizeof(OatQuickMethodHeader); in Create2MethodsWithGap() 157 const uint32_t gap_end = last_method_offset - sizeof(OatQuickMethodHeader); in Create2MethodsWithGap() 173 chunk_size - CodeAlignmentSize(chunk_start) - sizeof(OatQuickMethodHeader); in Create2MethodsWithGap() 197 header_offset + sizeof(OatQuickMethodHeader) + 1 /* thumb mode */); in Create2MethodsWithGap() 565 if (sizeof(OatQuickMethodHeader) < kArmAlignment) { in TEST_F() 577 method_after_thunk_offset - sizeof(OatQuickMethodHeader); in TEST_F() 950 RoundUp(raw_code1.size() + sizeof(OatQuickMethodHeader), kArmAlignment); in TEST_F() 971 - RoundUp(thunk_size + sizeof(OatQuickMethodHeader), kArmAlignment) in TEST_F() 972 - RoundUp(kNopCode.size() + sizeof(OatQuickMethodHeader), kArmAlignment) in TEST_F() 973 - sizeof(OatQuickMethodHeader); in TEST_F() [all …]
|
/art/dex2oat/linker/ |
D | relative_patcher_test.h | 117 uint32_t unaligned_code_offset = header_offset_to_align + sizeof(OatQuickMethodHeader); in CodeAlignmentSize() 134 offset += sizeof(OatQuickMethodHeader); in Link() 155 uint8_t fake_header[sizeof(OatQuickMethodHeader)]; in Link() 165 out_->WriteFully(fake_header, sizeof(OatQuickMethodHeader)); in Link() 166 offset += sizeof(OatQuickMethodHeader); in Link()
|
/art/compiler/ |
D | exception_test.cc | 88 const size_t header_size = sizeof(OatQuickMethodHeader); in SetUp() 97 OatQuickMethodHeader method_header(code_ptr - fake_header_code_and_maps_.data()); in SetUp() 98 static_assert(std::is_trivially_copyable<OatQuickMethodHeader>::value, "Cannot use memcpy"); in SetUp()
|
D | common_compiler_test.cc | 59 : sizeof(OatQuickMethodHeader) + vmap_table.size(); in CodeAndMetadata() 60 OatQuickMethodHeader method_header(vmap_table_offset); in CodeAndMetadata() 89 static_assert(std::is_trivially_copyable<OatQuickMethodHeader>::value, "Cannot use memcpy"); in CodeAndMetadata()
|
/art/test/004-ReferenceMap/ |
D | stack_walk_refmap_jni.cc | 26 const OatQuickMethodHeader* method_header = GetCurrentOatQuickMethodHeader(); \
|