src/share/vm/memory/binaryTreeDictionary.cpp

Print this page

        

*** 237,247 **** assert(nextTC->is_free(), "Should be a free chunk"); } } else { if (nextTC == NULL) { // Removing chunk at tail of list ! link_tail(prevFC); } // Chunk is interior to the list prevFC->link_after(nextTC); } --- 237,247 ---- assert(nextTC->is_free(), "Should be a free chunk"); } } else { if (nextTC == NULL) { // Removing chunk at tail of list ! this->link_tail(prevFC); } // Chunk is interior to the list prevFC->link_after(nextTC); }
*** 294,304 **** assert(head() == NULL || head()->prev() == NULL, "list invariant"); assert(tail() == NULL || tail()->next() == NULL, "list invariant"); Chunk_t* fc = tail(); fc->link_after(chunk); ! link_tail(chunk); assert(!tail() || size() == tail()->size(), "Wrong sized chunk in list"); FreeList_t<Chunk_t>::increment_count(); debug_only(increment_returned_bytes_by(chunk->size()*sizeof(HeapWord));) assert(head() == NULL || head()->prev() == NULL, "list invariant"); --- 294,304 ---- assert(head() == NULL || head()->prev() == NULL, "list invariant"); assert(tail() == NULL || tail()->next() == NULL, "list invariant"); Chunk_t* fc = tail(); fc->link_after(chunk); ! this->link_tail(chunk); assert(!tail() || size() == tail()->size(), "Wrong sized chunk in list"); FreeList_t<Chunk_t>::increment_count(); debug_only(increment_returned_bytes_by(chunk->size()*sizeof(HeapWord));) assert(head() == NULL || head()->prev() == NULL, "list invariant");
*** 321,331 **** Chunk_t* fc = head()->next(); if (fc != NULL) { chunk->link_after(fc); } else { assert(tail() == NULL, "List is inconsistent"); ! link_tail(chunk); } head()->link_after(chunk); assert(!head() || size() == head()->size(), "Wrong sized chunk in list"); FreeList_t<Chunk_t>::increment_count(); debug_only(increment_returned_bytes_by(chunk->size()*sizeof(HeapWord));) --- 321,331 ---- Chunk_t* fc = head()->next(); if (fc != NULL) { chunk->link_after(fc); } else { assert(tail() == NULL, "List is inconsistent"); ! this->link_tail(chunk); } head()->link_after(chunk); assert(!head() || size() == head()->size(), "Wrong sized chunk in list"); FreeList_t<Chunk_t>::increment_count(); debug_only(increment_returned_bytes_by(chunk->size()*sizeof(HeapWord));)
*** 938,948 **** class AscendTreeCensusClosure : public TreeCensusClosure<Chunk_t, FreeList_t> { public: void do_tree(TreeList<Chunk_t, FreeList_t>* tl) { if (tl != NULL) { do_tree(tl->left()); ! do_list(tl); do_tree(tl->right()); } } }; --- 938,948 ---- class AscendTreeCensusClosure : public TreeCensusClosure<Chunk_t, FreeList_t> { public: void do_tree(TreeList<Chunk_t, FreeList_t>* tl) { if (tl != NULL) { do_tree(tl->left()); ! this->do_list(tl); do_tree(tl->right()); } } };
*** 950,960 **** class DescendTreeCensusClosure : public TreeCensusClosure<Chunk_t, FreeList_t> { public: void do_tree(TreeList<Chunk_t, FreeList_t>* tl) { if (tl != NULL) { do_tree(tl->right()); ! do_list(tl); do_tree(tl->left()); } } }; --- 950,960 ---- class DescendTreeCensusClosure : public TreeCensusClosure<Chunk_t, FreeList_t> { public: void do_tree(TreeList<Chunk_t, FreeList_t>* tl) { if (tl != NULL) { do_tree(tl->right()); ! this->do_list(tl); do_tree(tl->left()); } } };
*** 1020,1030 **** class DescendTreeSearchClosure : public TreeSearchClosure<Chunk_t, FreeList_t> { public: bool do_tree(TreeList<Chunk_t, FreeList_t>* tl) { if (tl != NULL) { if (do_tree(tl->right())) return true; ! if (do_list(tl)) return true; if (do_tree(tl->left())) return true; } return false; } }; --- 1020,1030 ---- class DescendTreeSearchClosure : public TreeSearchClosure<Chunk_t, FreeList_t> { public: bool do_tree(TreeList<Chunk_t, FreeList_t>* tl) { if (tl != NULL) { if (do_tree(tl->right())) return true; ! if (this->do_list(tl)) return true; if (do_tree(tl->left())) return true; } return false; } };