• Ben Shi's avatar
    cmd/compile/internal/x86: simplify 387 with FLDZ and FLZ1 · bd483592
    Ben Shi authored
    FLD1 pushes +1.0 to the 387 register stack, and FLDZ pushes +0.0
    to the 387 regiser stack.
    
    They can be used to simplify MOVSSconst/MOVSDconst when the
    constant is +0.0, -0.0, +1.0, -1.0.
    
    The size of the go executable reduces about 62KB and the total size
    of pkg/linux_386 reduces about 7KB with this optimization.
    
    Change-Id: Icc8213b58262e0024a277cf1103812a17dd4b05e
    Reviewed-on: https://go-review.googlesource.com/119635
    Run-TryBot: Ben Shi <powerman1st@163.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: 's avatarKeith Randall <khr@golang.org>
    bd483592
387.go 9.09 KB