]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: rewrite the constant parts of the prove pass
authorkhr@golang.org <khr@golang.org>
Sat, 15 Jun 2024 05:29:09 +0000 (22:29 -0700)
committerKeith Randall <khr@golang.org>
Wed, 7 Aug 2024 16:07:33 +0000 (16:07 +0000)
commit3b96eebcbdf472326b9d6e46c373992bac9f72bb
tree74249e73aae57c999542334e376bf216c988a352
parent553443d41fbe643a29d452a5d4d4ce3b7442b0e9
cmd/compile: rewrite the constant parts of the prove pass

Handles a lot more cases where constant ranges can eliminate
various (mostly bounds failure) paths.

Fixes #66826
Fixes #66692
Fixes #48213
Update #57959

TODO: remove constant logic from poset code, no longer needed.

Change-Id: Id196436fcd8a0c84c7d59c04f93bd92e26a0fd7e
Reviewed-on: https://go-review.googlesource.com/c/go/+/599096
Reviewed-by: David Chase <drchase@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Michael Knyszek <mknyszek@google.com>
src/cmd/compile/internal/ssa/func.go
src/cmd/compile/internal/ssa/prove.go
src/cmd/compile/internal/ssa/rewrite.go
test/checkbce.go
test/codegen/comparisons.go
test/loopbce.go
test/prove.go
test/prove_constant_folding.go