• Ilya Tocar's avatar
    cmd/compile: omit racefuncentry/exit when they are not needed · 4201c207
    Ilya Tocar authored
    When compiling with -race, we insert calls to racefuncentry,
    into every function. Add a rule that removes them in leaf functions,
    without instrumented loads/stores.
    Shaves ~30kb from "-race" version of go tool:
    
    file difference:
    go_old 15626192
    go_new 15597520 [-28672 bytes]
    
    section differences:
    global text (code) = -24513 bytes (-0.358598%)
    read-only data = -5849 bytes (-0.167064%)
    Total difference -30362 bytes (-0.097928%)
    
    Fixes #24662
    
    Change-Id: Ia63bf1827f4cf2c25e3e28dcd097c150994ade0a
    Reviewed-on: https://go-review.googlesource.com/121235
    Run-TryBot: Ilya Tocar <ilya.tocar@intel.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarKeith Randall <khr@golang.org>
    4201c207
rewrite.go 27.5 KB