• Russ Cox's avatar
    runtime: stop scanning stack frames/args conservatively · e844f53a
    Russ Cox authored
    The goal here is to commit fully to having precise information
    about stack frames. If we need information we don't have,
    crash instead of assuming we should scan conservatively.
    
    Since the stack copying assumes fully precise information,
    any crashes during garbage collection that are introduced by
    this CL are crashes that could have happened during stack
    copying instead. Those are harder to find because stacks are
    copied much less often than the garbage collector is invoked.
    
    In service of that goal, remove ARGSIZE macros from
    asm_*.s, change switchtoM to have no arguments
    (it doesn't have any live arguments), and add
    args and locals information to some frames that
    can call back into Go.
    
    LGTM=khr
    R=khr, rlh
    CC=golang-codereviews
    https://golang.org/cl/137540043
    e844f53a
asm_amd64.s 41.2 KB