diff options
| author | Jorropo <jorropo.pgm@gmail.com> | 2025-07-04 09:07:27 +0200 |
|---|---|---|
| committer | Gopher Robot <gobot@golang.org> | 2025-07-08 08:03:58 -0700 |
| commit | a5bda585d5912b291aa247c8aa6519d2cc3125d7 (patch) | |
| tree | 1d82782cca3ec69e052a55651441b9c70114c667 /src | |
| parent | 86b5ba731044dcbb0400f03293989796ed5807fe (diff) | |
| download | go-a5bda585d5912b291aa247c8aa6519d2cc3125d7.tar.xz | |
cmd/compile: run fmt on ssa
prove.go used to make my editor and precomit checks very unhappy.
Change-Id: I25f7ffa2191480bc1b4f91fa91ccf3e4768045fa
Reviewed-on: https://go-review.googlesource.com/c/go/+/685818
Reviewed-by: Carlos Amedee <carlos@golang.org>
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-by: Keith Randall <khr@golang.org>
Auto-Submit: Keith Randall <khr@golang.org>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Diffstat (limited to 'src')
| -rw-r--r-- | src/cmd/compile/internal/ssa/prove.go | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/cmd/compile/internal/ssa/prove.go b/src/cmd/compile/internal/ssa/prove.go index 5617edb21f..93bd525c38 100644 --- a/src/cmd/compile/internal/ssa/prove.go +++ b/src/cmd/compile/internal/ssa/prove.go @@ -1917,15 +1917,22 @@ func (ft *factsTable) flowLimit(v *Value) bool { // See if we can get any facts because v is the result of signed mod by a constant. // The mod operation has already been rewritten, so we have to try and reconstruct it. -// x % d +// +// x % d +// // is rewritten as -// x - (x / d) * d +// +// x - (x / d) * d +// // furthermore, the divide itself gets rewritten. If d is a power of 2 (d == 1<<k), we do -// (x / d) * d = ((x + adj) >> k) << k -// = (x + adj) & (-1<<k) +// +// (x / d) * d = ((x + adj) >> k) << k +// = (x + adj) & (-1<<k) +// // with adj being an adjustment in case x is negative (see below). // if d is not a power of 2, we do -// x / d = ... TODO ... +// +// x / d = ... TODO ... func (ft *factsTable) detectSignedMod(v *Value) bool { if ft.detectSignedModByPowerOfTwo(v) { return true |
