Home
last modified time | relevance | path

Searched refs:OatQuickMethodHeader (Results 1 – 25 of 41) sorted by relevance

12

/art/runtime/
Doat_quick_method_header.h32 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;
Doat_file-inl.h27 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()
Doat_quick_method_header.cc31 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()
Dcha_test.cc31 #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()
Dcha.h88 typedef std::pair<ArtMethod*, OatQuickMethodHeader*> MethodAndMethodHeaderPair;
97 OatQuickMethodHeader* dependent_header) REQUIRES(Locks::cha_lock_);
110 const std::unordered_set<OatQuickMethodHeader*>& method_headers)
Dquick_exception_handler.h34 class OatQuickMethodHeader; variable
93 void SetHandlerMethodHeader(const OatQuickMethodHeader* handler_method_header) { in SetHandlerMethodHeader()
150 const OatQuickMethodHeader* handler_method_header_;
Dcha.cc37 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()
Dart_method.cc538 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()
Dstack.h39 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_;
Dstack_map.h35 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);
Dstack.cc86 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()
Dstack_map.cc61 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()
Dquick_exception_handler.cc323 const OatQuickMethodHeader* GetSingleFrameDeoptQuickMethodHeader() const { in GetSingleFrameDeoptQuickMethodHeader()
458 const OatQuickMethodHeader* method_header = GetCurrentOatQuickMethodHeader(); in HandleOptimizingDeoptimization()
550 const OatQuickMethodHeader* single_frame_deopt_quick_method_header_;
Doat_file.h49 class OatQuickMethodHeader; variable
205 const OatQuickMethodHeader* GetOatQuickMethodHeader() const;
/art/test/566-polymorphic-inlining/
Dpolymorphic_inline.cc35 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/
Djit_code_cache.cc126 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 …]
Djit_code_cache.h47 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)
Djit_memory_region.cc364 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/
Dosr.cc68 const OatQuickMethodHeader* header = in Java_Main_isInOsrCode()
90 const OatQuickMethodHeader* header = in Java_Main_isInInterpreter()
/art/dex2oat/linker/arm64/
Drelative_patcher_arm64_test.cc117 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/
Drelative_patcher_thumb2_test.cc150 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/
Drelative_patcher_test.h117 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/
Dexception_test.cc88 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()
Dcommon_compiler_test.cc59 : 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/
Dstack_walk_refmap_jni.cc26 const OatQuickMethodHeader* method_header = GetCurrentOatQuickMethodHeader(); \

12