From 7b67b68a0da091be2d7dc3e69c4df9a1a080d0de Mon Sep 17 00:00:00 2001 From: Jorropo Date: Thu, 4 Dec 2025 04:17:58 +0100 Subject: cmd/compile: use isUnsignedPowerOfTwo rather than isPowerOfTwo for unsigneds Fixes #76688 Change-Id: Icb8dab54a5ce7d83b656d50d5ea605d2a62b96f8 Reviewed-on: https://go-review.googlesource.com/c/go/+/726680 Auto-Submit: Jorropo LUCI-TryBot-Result: Go LUCI Reviewed-by: Cuong Manh Le Reviewed-by: Keith Randall Reviewed-by: Keith Randall Reviewed-by: Dmitri Shuralyov --- src/cmd/compile/internal/ssa/prove.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/cmd') diff --git a/src/cmd/compile/internal/ssa/prove.go b/src/cmd/compile/internal/ssa/prove.go index 1aab7e3eb7..39080a015e 100644 --- a/src/cmd/compile/internal/ssa/prove.go +++ b/src/cmd/compile/internal/ssa/prove.go @@ -2885,9 +2885,9 @@ func simplifyBlock(sdom SparseTree, ft *factsTable, b *Block) { xl := ft.limits[x.ID] y := v.Args[1] yl := ft.limits[y.ID] - if xl.umin == xl.umax && isPowerOfTwo(int64(xl.umin)) || + if xl.umin == xl.umax && isUnsignedPowerOfTwo(xl.umin) || xl.min == xl.max && isPowerOfTwo(xl.min) || - yl.umin == yl.umax && isPowerOfTwo(int64(yl.umin)) || + yl.umin == yl.umax && isUnsignedPowerOfTwo(yl.umin) || yl.min == yl.max && isPowerOfTwo(yl.min) { // 0,1 * a power of two is better done as a shift break -- cgit v1.3