/art/runtime/gc/space/ |
H A D | rosalloc_space.cc | 34 namespace space { namespace in namespace:art::gc 66 LOG(ERROR) << "Failed to initialize rosalloc for alloc space (" << name << ")"; 115 LOG(ERROR) << "Failed to create mem map for alloc space (" << name << ") of size " 120 RosAllocSpace* space = CreateFromMemMap(mem_map, name, starting_size, initial_size, local 126 << " ) " << *space; local 128 return space; 160 // Grow as much as possible within the space. 251 // Trim to release memory at the end of the space. 283 // Don't let the space grow any more. 311 callback(nullptr, nullptr, 0, arg); // Indicate end of a space [all...] |
H A D | large_object_space.cc | 31 #include "space-inl.h" 36 namespace space { namespace in namespace:art::gc 123 lock_("large object map space lock", kAllocSpaceLock) {} 137 MemMap* mem_map = MemMap::MapAnonymous("large object space allocation", nullptr, num_bytes, 359 CHECK(mem_map != nullptr) << "Failed to allocate large object space mem map: " << error_msg; 366 lock_("free list space lock", kAllocSpaceLock) { 373 MemMap::MapAnonymous("large object free list space allocation info map", 492 // Fit our object in the previous allocation info free space. 500 // If there is remaining space, insert back into the free set. 504 // Try to steal some memory from the free space a 583 space::LargeObjectSpace* space = context->space->AsLargeObjectSpace(); local [all...] |
H A D | region_space.h | 22 #include "space.h" 27 namespace space { namespace in namespace:art::gc 29 // A space that consists of equal-sized regions. 38 // Create a region space with the requested sizes. The requested base address is not 40 // space to confirm the request was granted. 43 // Allocate num_bytes, returns null if the space is full. 63 // Return the storage space required by obj. 104 kRegionTypeFromSpace, // From-space. To be evacuated. 105 kRegionTypeUnevacFromSpace, // Unevacuated from-space. Not to be evacuated. 106 kRegionTypeToSpace, // To-space [all...] |
H A D | space.h | 41 namespace space { namespace in namespace:art::gc 60 // Objects are retained forever with this policy for a space. 62 // Every GC cycle will attempt to collect objects in this space. 80 // A space contains memory allocated for managed objects. 83 // Dump space. Also key method for C++ vtables. 86 // Name of the space. May vary, for example before/after the Zygote fork. 91 // The policy of when objects are collected associated with this space. 96 // Is the given object contained within this space? 99 // The kind of space this: image, alloc, zygote, large object. 102 // Is this an image space, i 253 space::Space* const space; member in class:art::gc::space::AllocSpace::SweepCallbackContext::space [all...] |
H A D | image_space.cc | 38 #include "space-inl.h" 43 namespace space { namespace in namespace:art::gc 339 // Read the free space of the cache partition and make a decision whether to keep the generated 340 // image. This is to try to mitigate situations where the system might run out of space later. 391 ImageSpace* space; local 501 space = ImageSpace::Init(image_filename->c_str(), 507 if (space != nullptr) { 508 // Check whether there is enough space left over in the data partition. Even if we can load 510 // of space constraints. 513 // ignore the check (as it would test for free space i [all...] |
/art/compiler/ |
H A D | image_writer.h | 35 #include "gc/space/space.h" 47 namespace space { namespace in namespace:art::gc 49 } // namespace space 151 // Mark the objects defined in this space in the given live bitmap. 264 // Offset to the free space in image_, initially size of image header. 269 // Image size is the *address space* covered by this image. As the live bitmap is aligned 270 // to the page size, the live bitmap will cover more address space than necessary. But live 484 // Return true of obj is inside of the boot image space. This may only return true if we are
|
/art/runtime/ |
H A D | class_linker.h | 42 namespace space { namespace in namespace:art::gc 44 } // namespace space 139 // Add an image space to the class linker, may fix up classloader fields and dex cache fields. 140 // The dex files that were newly opened for the space are placed in the out argument 142 // The space must be already added to the heap before calling AddImageSpace since we need to 144 bool AddImageSpace(gc::space::ImageSpace* space, 153 bool OpenImageDexFiles(gc::space::ImageSpace* space, 550 void AddImageClassesToClassTable(std::vector<gc::space [all...] |
H A D | thread.cc | 49 #include "gc/space/space-inl.h" 500 // stack space, so we should add our reserved space on top of what they requested, rather 504 // If we are going to use implicit stack checks, allocate space for the protected 915 // Set stack_end_ to the bottom of the stack saving space of stack overflows 2731 gc::space::ContinuousSpace* space = heap->FindContinuousSpaceFromObject(klass, variable 2733 if (space != nullptr && space [all...] |
H A D | class_linker.cc | 56 #include "gc/space/image_space.h" 766 const std::vector<gc::space::ImageSpace*>& spaces) 778 for (gc::space::ImageSpace* space : spaces) { 779 auto& header = space->GetImageHeader(); 780 size_t offset = reinterpret_cast<uint8_t*>(m) - space->Begin(); 795 const std::vector<gc::space::ImageSpace*>& spaces) 813 const std::vector<gc::space::ImageSpace*>& spaces) 818 for (auto space : spaces) { 819 auto offset = reinterpret_cast<uint8_t*>(arr) - space 1227 UpdateAppImageClassLoadersAndDexCaches( gc::space::ImageSpace* space, Handle<mirror::ClassLoader> class_loader, Handle<mirror::ObjectArray<mirror::DexCache>> dex_caches, ClassTable::ClassSet* new_class_set, bool* out_forward_dex_cache_array, std::string* out_error_msg) argument 1470 UpdateClassLoaderAndResolvedStringsVisitor(gc::space::ImageSpace* space, mirror::ClassLoader* class_loader, bool forward_strings) argument 1534 OpenImageDexFiles(gc::space::ImageSpace* space, std::vector<std::unique_ptr<const DexFile>>* out_dex_files, std::string* error_msg) argument 1559 AddImageSpace( gc::space::ImageSpace* space, Handle<mirror::ClassLoader> class_loader, jobjectArray dex_elements, const char* dex_location, std::vector<std::unique_ptr<const DexFile>>* out_dex_files, std::string* error_msg) argument [all...] |
/art/patchoat/ |
H A D | patchoat.cc | 37 #include "gc/space/image_space.h" 184 std::vector<gc::space::ImageSpace*> spaces = Runtime::Current()->GetHeap()->GetBootImageSpaces(); 185 std::map<gc::space::ImageSpace*, std::unique_ptr<File>> space_to_file_map; 186 std::map<gc::space::ImageSpace*, std::unique_ptr<MemMap>> space_to_memmap_map; 187 std::map<gc::space::ImageSpace*, PatchOat> space_to_patchoat_map; 188 std::map<gc::space::ImageSpace*, bool> space_to_skip_patching_map; 191 gc::space::ImageSpace* space = spaces[i]; local 192 std::string input_image_filename = space->GetImageFilename(); 228 space_to_file_map.emplace(space, st 233 gc::space::ImageSpace* space = spaces[i]; local 304 gc::space::ImageSpace* space = spaces[i]; local [all...] |
/art/runtime/gc/ |
H A D | heap.h | 35 #include "gc/space/large_object_space.h" 81 namespace space { namespace in namespace:art::gc 94 } // namespace space 134 // Primitive arrays larger than this size are put in the large object space. 139 // Whether or not we use the free list large object space. Only use it if USE_ART_LOW_4G_ALLOCATOR 141 static constexpr space::LargeObjectSpaceType kDefaultLargeObjectSpaceType = 143 space::LargeObjectSpaceType::kFreeList 144 : space::LargeObjectSpaceType::kMap; 169 space::LargeObjectSpaceType large_object_space_type, 252 // Transition the garbage collector during runtime, may copy objects from one space t [all...] |
H A D | heap.cc | 49 #include "gc/space/bump_pointer_space.h" 50 #include "gc/space/dlmalloc_space-inl.h" 51 #include "gc/space/image_space.h" 52 #include "gc/space/large_object_space.h" 53 #include "gc/space/region_space.h" 54 #include "gc/space/rosalloc_space-inl.h" 55 #include "gc/space/space-inl.h" 56 #include "gc/space/zygote_space.h" 97 // Define space nam 797 space::Space* space = nullptr; local 812 stream << " in space " << *space; local 1063 AddSpace(space::Space* space) argument 1104 RemoveSpace(space::Space* space) argument 1341 space::AllocSpace* space = nullptr; local 1590 stream << space << " " << *space << "\\n"; local 1599 stream << space << " " << *space << "\\n"; local 2315 BuildBins(space::ContinuousSpace* space) argument 2932 space::MallocSpace* space = ref_space->AsMallocSpace(); variable 3264 FindModUnionTableFromSpace(space::Space* space) argument 3272 FindRememberedSetFromSpace(space::Space* space) argument 3511 space::Space* space = FindContinuousSpaceFromObject(obj, true); local 3955 space::Space* space = remembered_set->GetSpace(); local 3962 RemoveRememberedSet(space::Space* space) argument [all...] |
/art/runtime/hprof/ |
H A D | hprof.cc | 53 #include "gc/space/space.h" 1085 const gc::space::ContinuousSpace* const space = heap->FindContinuousSpaceFromObject(obj, true); member in class:art::hprof::gc::space 1087 if (space != nullptr) { 1088 if (space->IsZygoteSpace()) { 1090 } else if (space->IsImageSpace()) { 1310 // Reserve some space for the length of the instance data, which we won't
|