• Austin Clements's avatar
    runtime: remove unnecessary atomics from heapBitSetType · c03925ed
    Austin Clements authored
    These used to be necessary when racing with updates to the mark bit,
    but since the mark bit is no longer in the bitmap and the checkmark is
    only updated with the world stopped, we can now always use regular
    writes to update the type information in the heap bitmap.
    
    Somewhat surprisingly, this has basically no overall performance
    effect beyond the usual noise, but it does clean up the code.
    
    Change-Id: I3933d0b4c0bc1c9bcf6313613515c0b496212105
    Reviewed-on: https://go-review.googlesource.com/29277
    Run-TryBot: Austin Clements <austin@google.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarRick Hudson <rlh@golang.org>
    c03925ed
mbitmap.go 62.1 KB