equal
deleted
inserted
replaced
112 |
112 |
113 void linkAfter(FreeChunk* ptr) { |
113 void linkAfter(FreeChunk* ptr) { |
114 linkNext(ptr); |
114 linkNext(ptr); |
115 if (ptr != NULL) ptr->linkPrev(this); |
115 if (ptr != NULL) ptr->linkPrev(this); |
116 } |
116 } |
117 void linkAfterNonNull(FreeChunk* ptr) { |
|
118 assert(ptr != NULL, "precondition violation"); |
|
119 linkNext(ptr); |
|
120 ptr->linkPrev(this); |
|
121 } |
|
122 void linkNext(FreeChunk* ptr) { _next = ptr; } |
117 void linkNext(FreeChunk* ptr) { _next = ptr; } |
123 void linkPrev(FreeChunk* ptr) { |
118 void linkPrev(FreeChunk* ptr) { |
124 LP64_ONLY(if (UseCompressedOops) _prev = ptr; else) |
119 LP64_ONLY(if (UseCompressedOops) _prev = ptr; else) |
125 _prev = (FreeChunk*)((intptr_t)ptr | 0x1); |
120 _prev = (FreeChunk*)((intptr_t)ptr | 0x1); |
126 } |
121 } |
127 void clearPrev() { _prev = NULL; } |
|
128 void clearNext() { _next = NULL; } |
122 void clearNext() { _next = NULL; } |
129 void markNotFree() { |
123 void markNotFree() { |
130 // Set _prev (klass) to null before (if) clearing the mark word below |
124 // Set _prev (klass) to null before (if) clearing the mark word below |
131 _prev = NULL; |
125 _prev = NULL; |
132 #ifdef _LP64 |
126 #ifdef _LP64 |