• Cherry Zhang's avatar
    cmd/compile: using a single Store op for non-pointer non-skip store · ce584e51
    Cherry Zhang authored
    This makes fewer Values around until decomposing, reducing
    allocation in compiler.
    
    name       old alloc/op    new alloc/op    delta
    Template      41.4MB ± 0%     40.8MB ± 0%  -1.29%  (p=0.000 n=10+10)
    Unicode       30.3MB ± 0%     30.2MB ± 0%  -0.24%  (p=0.000 n=10+10)
    GoTypes        118MB ± 0%      115MB ± 0%  -2.23%  (p=0.000 n=10+10)
    Compiler       505MB ± 0%      493MB ± 0%  -2.47%  (p=0.000 n=10+10)
    SSA            881MB ± 0%      872MB ± 0%  -1.03%  (p=0.000 n=10+10)
    
    name       old allocs/op   new allocs/op   delta
    Template        401k ± 1%       400k ± 1%    ~     (p=0.631 n=10+10)
    Unicode         321k ± 0%       321k ± 1%    ~     (p=0.684 n=10+10)
    GoTypes        1.18M ± 0%      1.17M ± 0%  -0.34%  (p=0.000 n=10+10)
    Compiler       4.63M ± 0%      4.61M ± 0%  -0.43%  (p=0.000 n=10+10)
    SSA            7.83M ± 0%      7.82M ± 0%  -0.13%  (p=0.000 n=10+10)
    
    Change-Id: I8f736396294444248a439bd4c90be1357024ce88
    Reviewed-on: https://go-review.googlesource.com/38294
    Run-TryBot: Cherry Zhang <cherryyz@google.com>
    Reviewed-by: default avatarJosh Bleecher Snyder <josharian@gmail.com>
    ce584e51
ssa.go 152 KB