• Luuk van Dijk's avatar
    cmd/gc: escape analysis to track flow of in to out parameters. · 507fcf37
    Luuk van Dijk authored
    includes step 0: synthesize outparams, from 6600044
    includes step 1,2: give outparams loopdepth 0 and verify unchanged results
             generate esc:$mask tags, but still tie to sink if a param has mask != 0
    from 6610054
    
    adds final steps:
    - have esccall generate n->escretval, a list of nodes the function results flow to
    - use these in esccall and ORETURN/OAS2FUNC/and f(g())
    - only tie parameters to sink if tag is absent, otherwise according to mask, tie them to escretval
    
    R=rsc, bradfitz
    CC=dave, gobot, golang-dev, iant, rsc
    https://golang.org/cl/6741044
    507fcf37
escape2.go 23.4 KB