comparison src/share/vm/runtime/handles.inline.hpp @ 4731:1f114331df92

8023730: new hotspot build - hs24-b57 Reviewed-by: jcoomes
author amurillo
date Mon, 26 Aug 2013 12:06:09 -0700
parents d2a62e0f25eb
children
comparison
equal deleted inserted replaced
4:66b3cd43e9b7 5:fcc5a25a0152
77 77
78 inline void HandleMark::pop_and_restore() { 78 inline void HandleMark::pop_and_restore() {
79 HandleArea* area = _area; // help compilers with poor alias analysis 79 HandleArea* area = _area; // help compilers with poor alias analysis
80 // Delete later chunks 80 // Delete later chunks
81 if( _chunk->next() ) { 81 if( _chunk->next() ) {
82 // reset arena size before delete chunks. Otherwise, the total
83 // arena size could exceed total chunk size
84 assert(area->size_in_bytes() > size_in_bytes(), "Sanity check");
85 area->set_size_in_bytes(size_in_bytes());
82 _chunk->next_chop(); 86 _chunk->next_chop();
87 } else {
88 assert(area->size_in_bytes() == size_in_bytes(), "Sanity check");
83 } 89 }
84 // Roll back arena to saved top markers 90 // Roll back arena to saved top markers
85 area->_chunk = _chunk; 91 area->_chunk = _chunk;
86 area->_hwm = _hwm; 92 area->_hwm = _hwm;
87 area->_max = _max; 93 area->_max = _max;
88 area->set_size_in_bytes(_size_in_bytes);
89 debug_only(area->_handle_mark_nesting--); 94 debug_only(area->_handle_mark_nesting--);
90 } 95 }
91 96
92 #endif // SHARE_VM_RUNTIME_HANDLES_INLINE_HPP 97 #endif // SHARE_VM_RUNTIME_HANDLES_INLINE_HPP