• David Chase's avatar
    cmd/compile: enable flag-specified dump of specific phase+function · a190f3c8
    David Chase authored
    For very large input files, use of GOSSAFUNC to obtain a dump
    after compilation steps can lead to both unwieldy large output
    files and unwieldy larger processes (because the output is
    buffered in a string).  This flag
    
      -d=ssa/<phase>/dump:<function name>
    
    provides finer control of what is dumped, into a smaller
    file, and with less memory overhead in the running compiler.
    The special phase name "build" is added to allow printing
    of the just-built ssa before any transformations are applied.
    
    This was helpful in making sense of the gogo/protobuf
    problems.
    
    The output format was tweaked to remove gratuitous spaces,
    and a crude -d=ssa/help help text was added.
    
    Change-Id: If7516e22203420eb6ed3614f7cee44cb9260f43e
    Reviewed-on: https://go-review.googlesource.com/23044
    Run-TryBot: David Chase <drchase@google.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarKeith Randall <khr@golang.org>
    a190f3c8
compile.go 13.4 KB