Lines Matching full:special
213 // Unlink & free special records for any objects we're about to free.
215 // 1. An object can have both finalizer and profile special records.
217 // mark the object as live and preserve the profile special.
222 special := *specialp
223 for special != nil {
225 objIndex := uintptr(special.offset) / size
229 // This object is not marked and has at least one special record.
233 for tmp := special; tmp != nil && uintptr(tmp.offset) < endOffset; tmp = tmp.next {
242 for special != nil && uintptr(special.offset) < endOffset {
243 // Find the exact byte for which the special was setup
245 p := s.base() + uintptr(special.offset)
246 if special.kind == _KindSpecialFinalizer || !hasFin {
247 // Splice out special record.
248 y := special
249 special = special.next
250 *specialp = special
254 // Keep special record.
255 specialp = &special.next
256 special = *specialp
260 // object is still live: keep special record
261 specialp = &special.next
262 special = *specialp