mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
cmd/compile: change !l.nonzero() into l.maybezero()
if l.maybezero() is easier to read than if !l.nonzero() Change-Id: I1183b0c0dc51fa1eed26dfc7a5a996783806a991 Reviewed-on: https://go-review.googlesource.com/c/go/+/714621 Reviewed-by: Keith Randall <khr@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Jorropo <jorropo.pgm@gmail.com> Reviewed-by: Keith Randall <khr@golang.org> Reviewed-by: Michael Knyszek <mknyszek@google.com>
This commit is contained in:
parent
5453b788fd
commit
a0f33b2887
1 changed files with 10 additions and 7 deletions
|
|
@ -171,6 +171,9 @@ func (l limit) unsignedMinMax(minimum, maximum uint64) limit {
|
||||||
func (l limit) nonzero() bool {
|
func (l limit) nonzero() bool {
|
||||||
return l.min > 0 || l.umin > 0 || l.max < 0
|
return l.min > 0 || l.umin > 0 || l.max < 0
|
||||||
}
|
}
|
||||||
|
func (l limit) maybeZero() bool {
|
||||||
|
return !l.nonzero()
|
||||||
|
}
|
||||||
func (l limit) nonnegative() bool {
|
func (l limit) nonnegative() bool {
|
||||||
return l.min >= 0
|
return l.min >= 0
|
||||||
}
|
}
|
||||||
|
|
@ -2403,40 +2406,40 @@ func addLocalFacts(ft *factsTable, b *Block) {
|
||||||
y := ft.limits[v.Args[1].ID]
|
y := ft.limits[v.Args[1].ID]
|
||||||
if !unsignedAddOverflows(x.umax, y.umax, v.Type) {
|
if !unsignedAddOverflows(x.umax, y.umax, v.Type) {
|
||||||
r := gt
|
r := gt
|
||||||
if !x.nonzero() {
|
if x.maybeZero() {
|
||||||
r |= eq
|
r |= eq
|
||||||
}
|
}
|
||||||
ft.update(b, v, v.Args[1], unsigned, r)
|
ft.update(b, v, v.Args[1], unsigned, r)
|
||||||
r = gt
|
r = gt
|
||||||
if !y.nonzero() {
|
if y.maybeZero() {
|
||||||
r |= eq
|
r |= eq
|
||||||
}
|
}
|
||||||
ft.update(b, v, v.Args[0], unsigned, r)
|
ft.update(b, v, v.Args[0], unsigned, r)
|
||||||
}
|
}
|
||||||
if x.min >= 0 && !signedAddOverflowsOrUnderflows(x.max, y.max, v.Type) {
|
if x.min >= 0 && !signedAddOverflowsOrUnderflows(x.max, y.max, v.Type) {
|
||||||
r := gt
|
r := gt
|
||||||
if !x.nonzero() {
|
if x.maybeZero() {
|
||||||
r |= eq
|
r |= eq
|
||||||
}
|
}
|
||||||
ft.update(b, v, v.Args[1], signed, r)
|
ft.update(b, v, v.Args[1], signed, r)
|
||||||
}
|
}
|
||||||
if y.min >= 0 && !signedAddOverflowsOrUnderflows(x.max, y.max, v.Type) {
|
if y.min >= 0 && !signedAddOverflowsOrUnderflows(x.max, y.max, v.Type) {
|
||||||
r := gt
|
r := gt
|
||||||
if !y.nonzero() {
|
if y.maybeZero() {
|
||||||
r |= eq
|
r |= eq
|
||||||
}
|
}
|
||||||
ft.update(b, v, v.Args[0], signed, r)
|
ft.update(b, v, v.Args[0], signed, r)
|
||||||
}
|
}
|
||||||
if x.max <= 0 && !signedAddOverflowsOrUnderflows(x.min, y.min, v.Type) {
|
if x.max <= 0 && !signedAddOverflowsOrUnderflows(x.min, y.min, v.Type) {
|
||||||
r := lt
|
r := lt
|
||||||
if !x.nonzero() {
|
if x.maybeZero() {
|
||||||
r |= eq
|
r |= eq
|
||||||
}
|
}
|
||||||
ft.update(b, v, v.Args[1], signed, r)
|
ft.update(b, v, v.Args[1], signed, r)
|
||||||
}
|
}
|
||||||
if y.max <= 0 && !signedAddOverflowsOrUnderflows(x.min, y.min, v.Type) {
|
if y.max <= 0 && !signedAddOverflowsOrUnderflows(x.min, y.min, v.Type) {
|
||||||
r := lt
|
r := lt
|
||||||
if !y.nonzero() {
|
if y.maybeZero() {
|
||||||
r |= eq
|
r |= eq
|
||||||
}
|
}
|
||||||
ft.update(b, v, v.Args[0], signed, r)
|
ft.update(b, v, v.Args[0], signed, r)
|
||||||
|
|
@ -2446,7 +2449,7 @@ func addLocalFacts(ft *factsTable, b *Block) {
|
||||||
y := ft.limits[v.Args[1].ID]
|
y := ft.limits[v.Args[1].ID]
|
||||||
if !unsignedSubUnderflows(x.umin, y.umax) {
|
if !unsignedSubUnderflows(x.umin, y.umax) {
|
||||||
r := lt
|
r := lt
|
||||||
if !y.nonzero() {
|
if y.maybeZero() {
|
||||||
r |= eq
|
r |= eq
|
||||||
}
|
}
|
||||||
ft.update(b, v, v.Args[0], unsigned, r)
|
ft.update(b, v, v.Args[0], unsigned, r)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue