]> Cypherpunks.ru repositories - gostls13.git/commitdiff
Revert "cmd/compile: teach prove about bitwise OR operation"
authorKeith Randall <khr@golang.org>
Tue, 24 Jan 2023 16:11:06 +0000 (16:11 +0000)
committerKeith Randall <khr@golang.org>
Tue, 24 Jan 2023 17:58:12 +0000 (17:58 +0000)
This reverts commit 3680b5e9c4f42fcf9155aa42b3b344d1fbe19571.

Reason for revert: causes long compile times on certain functions. See issue #57959

Change-Id: Ie9e881ca8abbc79a46de2bfeaed0b9d6c416ed42
Reviewed-on: https://go-review.googlesource.com/c/go/+/463295
Run-TryBot: Keith Randall <khr@golang.org>
Reviewed-by: David Chase <drchase@google.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Cuong Manh Le <cuong.manhle.vn@gmail.com>
src/cmd/compile/internal/ssa/prove.go
test/prove.go

index 89098e411b346ed310b4fbbbc60f61c5ba2e25b7..26a349997e09ed45e173918a77334ef8d953181c 100644 (file)
@@ -856,9 +856,6 @@ func prove(f *Func) {
                        case OpAnd64, OpAnd32, OpAnd16, OpAnd8:
                                ft.update(b, v, v.Args[1], unsigned, lt|eq)
                                ft.update(b, v, v.Args[0], unsigned, lt|eq)
-                       case OpOr64, OpOr32, OpOr16, OpOr8:
-                               ft.update(b, v, v.Args[1], unsigned, gt|eq)
-                               ft.update(b, v, v.Args[0], unsigned, gt|eq)
                        case OpDiv64u, OpDiv32u, OpDiv16u, OpDiv8u,
                                OpRsh8Ux64, OpRsh8Ux32, OpRsh8Ux16, OpRsh8Ux8,
                                OpRsh16Ux64, OpRsh16Ux32, OpRsh16Ux16, OpRsh16Ux8,
index ab893099bfd72ee3708eb1db4cfe4a345ad9005c..cf225ff38e58f5e231e3e3de3862712cfec309c3 100644 (file)
@@ -1092,11 +1092,6 @@ func issue51622(b []byte) int {
        return 0
 }
 
-func issue45928(x int) {
-       combinedFrac := (x) / (x | (1 << 31)) // ERROR "Proved Neq64$"
-       useInt(combinedFrac)
-}
-
 //go:noinline
 func useInt(a int) {
 }