• Bryan Chan's avatar
    cmd/compile/internal/ssa: handle symbol address comparisons consistently · 625f2dcc
    Bryan Chan authored
    CL 38338 introduced SSA rules to optimize two types of pointer equality
    tests: a pointer compared with itself, and comparison of addresses taken
    of two symbols which may have the same base. This patch adds rules to
    apply the same optimization to pointer inequality tests, which also ensures
    that two pointers to zero-width types cannot be both equal and unequal
    at the same time.
    
    Fixes #24503.
    
    Change-Id: Ic828aeb86ae2e680caf66c35f4c247674768a9ba
    Reviewed-on: https://go-review.googlesource.com/102275Reviewed-by: 's avatarKeith Randall <khr@golang.org>
    Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    625f2dcc
generic.rules 68.1 KB