• Austin Clements's avatar
    runtime: use typedmemclr for typed memory · aa581f51
    Austin Clements authored
    The hybrid barrier requires distinguishing typed and untyped memory
    even when zeroing because the *current* contents of the memory matters
    even when overwriting.
    
    This commit introduces runtime.typedmemclr and runtime.memclrHasPointers
    as a typed memory clearing functions parallel to runtime.typedmemmove.
    Currently these simply call memclr, but with the hybrid barrier we'll
    need to shade any pointers we're overwriting. These will provide us
    with the necessary hooks to do so.
    
    Updates #17503.
    
    Change-Id: I74478619f8907825898092aaa204d6e4690f27e6
    Reviewed-on: https://go-review.googlesource.com/31366Reviewed-by: 's avatarKeith Randall <khr@golang.org>
    Reviewed-by: 's avatarRick Hudson <rlh@golang.org>
    aa581f51
mbarrier.go 11.4 KB