aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Randall <khr@golang.org>2023-01-24 16:11:06 +0000
committerGopher Robot <gobot@golang.org>2023-01-25 18:41:55 +0000
commit10124c2631893fc944a98880796eadd7df048c37 (patch)
treee7c6eb991d0018562cd67c9ba7c497cab0d1808b
parent5adb0ca8e93d24d47fc3a9fbf03296cbe22fcc35 (diff)
downloadgo-10124c2631893fc944a98880796eadd7df048c37.tar.gz
go-10124c2631893fc944a98880796eadd7df048c37.zip
[release-branch.go1.20] Revert "cmd/compile: teach prove about bitwise OR operation"
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> (cherry picked from commit a6ddb15f8f5955d93eeb2f674ec564ffd4530c18) Reviewed-on: https://go-review.googlesource.com/c/go/+/463415 Run-TryBot: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Keith Randall <khr@golang.org> Auto-Submit: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Keith Randall <khr@google.com>
-rw-r--r--src/cmd/compile/internal/ssa/prove.go3
-rw-r--r--test/prove.go5
2 files changed, 0 insertions, 8 deletions
diff --git a/src/cmd/compile/internal/ssa/prove.go b/src/cmd/compile/internal/ssa/prove.go
index 908fb5af46..9ecd335b6a 100644
--- a/src/cmd/compile/internal/ssa/prove.go
+++ b/src/cmd/compile/internal/ssa/prove.go
@@ -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 OpPhi:
// Determine the min and max value of OpPhi composed entirely of integer constants.
//
diff --git a/test/prove.go b/test/prove.go
index 7792b432f9..c91fb26c04 100644
--- a/test/prove.go
+++ b/test/prove.go
@@ -1053,11 +1053,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) {
}