diff options
Diffstat (limited to 'src/runtime/mgcsweep.go')
| -rw-r--r-- | src/runtime/mgcsweep.go | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/src/runtime/mgcsweep.go b/src/runtime/mgcsweep.go index a3bf2989df..1605c21966 100644 --- a/src/runtime/mgcsweep.go +++ b/src/runtime/mgcsweep.go @@ -650,9 +650,9 @@ func (sl *sweepLocked) sweep(preserve bool) bool { } } - // Copy over the inline mark bits if necessary. + // Copy over and clear the inline mark bits if necessary. if gcUsesSpanInlineMarkBits(s.elemsize) { - s.mergeInlineMarks(s.gcmarkBits) + s.moveInlineMarks(s.gcmarkBits) } // Check for zombie objects. @@ -704,11 +704,6 @@ func (sl *sweepLocked) sweep(preserve bool) bool { // Initialize alloc bits cache. s.refillAllocCache(0) - // Reset the object queue, if we have one. - if gcUsesSpanInlineMarkBits(s.elemsize) { - s.initInlineMarkBits() - } - // The span must be in our exclusive ownership until we update sweepgen, // check for potential races. if state := s.state.get(); state != mSpanInUse || s.sweepgen != sweepgen-1 { |
