• Josh Bleecher Snyder's avatar
    cmd/compile: evaluate itabname during walk instead of SSA · a33903b0
    Josh Bleecher Snyder authored
    For backend concurrency safety. Follow-up to CL 38721.
    
    This does introduce a Nodes where there wasn't one before,
    but these are so rare that the performance impact is negligible.
    
    Does not pass toolstash-check, but the only change is line numbers,
    and the new line numbers appear preferable.
    
    Updates #15756
    
    name       old alloc/op    new alloc/op    delta
    Template      39.9MB ± 0%     39.9MB ± 0%    ~     (p=0.841 n=5+5)
    Unicode       29.8MB ± 0%     29.8MB ± 0%    ~     (p=0.690 n=5+5)
    GoTypes        113MB ± 0%      113MB ± 0%  +0.09%  (p=0.008 n=5+5)
    SSA            854MB ± 0%      855MB ± 0%    ~     (p=0.222 n=5+5)
    Flate         25.3MB ± 0%     25.3MB ± 0%    ~     (p=0.690 n=5+5)
    GoParser      31.8MB ± 0%     31.9MB ± 0%    ~     (p=0.421 n=5+5)
    Reflect       78.2MB ± 0%     78.3MB ± 0%    ~     (p=0.548 n=5+5)
    Tar           26.7MB ± 0%     26.7MB ± 0%    ~     (p=0.690 n=5+5)
    XML           42.3MB ± 0%     42.3MB ± 0%    ~     (p=0.222 n=5+5)
    
    name       old allocs/op   new allocs/op   delta
    Template        391k ± 1%       391k ± 0%    ~     (p=0.841 n=5+5)
    Unicode         320k ± 0%       320k ± 0%    ~     (p=0.841 n=5+5)
    GoTypes        1.14M ± 0%      1.14M ± 0%  +0.26%  (p=0.008 n=5+5)
    SSA            7.60M ± 0%      7.60M ± 0%    ~     (p=0.548 n=5+5)
    Flate           234k ± 0%       234k ± 1%    ~     (p=1.000 n=5+5)
    GoParser        316k ± 1%       317k ± 0%    ~     (p=0.841 n=5+5)
    Reflect         979k ± 0%       980k ± 0%    ~     (p=0.690 n=5+5)
    Tar             251k ± 1%       251k ± 0%    ~     (p=0.595 n=5+5)
    XML             394k ± 0%       393k ± 0%    ~     (p=0.222 n=5+5)
    
    
    Change-Id: I237ae5502db4560f78ce021dc62f6d289797afd6
    Reviewed-on: https://go-review.googlesource.com/39197
    Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarRobert Griesemer <gri@golang.org>
    a33903b0
Name
Last commit
Last update
..
amd64 Loading commit data...
arm Loading commit data...
arm64 Loading commit data...
gc Loading commit data...
mips Loading commit data...
mips64 Loading commit data...
ppc64 Loading commit data...
s390x Loading commit data...
ssa Loading commit data...
syntax Loading commit data...
test Loading commit data...
x86 Loading commit data...