• Josh Bleecher Snyder's avatar
    cmd/vet/all: use -dolinkobj=false to speed up runs · 731fd009
    Josh Bleecher Snyder authored
    When running on the host platform,
    the standard library has almost certainly already been built.
    However, all other platforms will probably need building.
    Use the new -dolinkobj=false flag to cmd/compile
    to only build the export data instead of doing a full compile.
    
    Having partial object files could be confusing for people
    doing subsequent cross-compiles, depending on what happens with #18369.
    However, cmd/vet/all will mainly be run by builders
    and core developers, who are probably fairly well-placed
    to handle any such confusion.
    
    This reduces the time on my machine for a cold run of
    'go run main.go -all' by almost half:
    
    benchmark           old ns/op        new ns/op        delta
    BenchmarkVetAll     240670814551     130784517074     -45.66%
    
    Change-Id: Ieb866ffb2cb714b361b0a6104077652f8eacd166
    Reviewed-on: https://go-review.googlesource.com/37385
    Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
    Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
    Reviewed-by: default avatarRob Pike <r@golang.org>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    731fd009
main.go 8.95 KB