diff options
| author | Yi Yang <qingfeng.yy@alibaba-inc.com> | 2026-03-02 09:52:43 +0000 |
|---|---|---|
| committer | Gopher Robot <gobot@golang.org> | 2026-03-02 13:49:31 -0800 |
| commit | 033b11f257e256a8a24d575fa92a3bb3a46e1178 (patch) | |
| tree | a4217b5a6f815de09ea97988d1b4f62e3a3fc639 /src/syscall | |
| parent | aa80d7a7e6bf97aa27a74cc5056ef270a2a0c2f4 (diff) | |
| download | go-033b11f257e256a8a24d575fa92a3bb3a46e1178.tar.xz | |
cmd/compile: optimize sccp for faster convergence
While investigating other optimizations, I found several
opportunities to accelerate sccp convergence:
- Avoid adding duplicate uses to the re-visit worklist
- Prevent queueing uses of values that have already reached the Bottom
- Add an early exit when processing a value that is already Bottom
These changes provide an overall speedup of ~9% for sccp phase
during a full make.bash run. Also they does not change
the number of constants found or the amount of dead code eliminated.
Updates #77325
Change-Id: Iaf83f6ea355eed366c3d09fc38f85561634a5a16
GitHub-Last-Rev: 078c3d309cc1f1e4b7f7a40635ffc4506f2ac1c6
GitHub-Pull-Request: golang/go#77399
Reviewed-on: https://go-review.googlesource.com/c/go/+/740980
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: David Chase <drchase@google.com>
Reviewed-by: Keith Randall <khr@golang.org>
Reviewed-by: Keith Randall <khr@google.com>
Auto-Submit: Keith Randall <khr@golang.org>
Diffstat (limited to 'src/syscall')
0 files changed, 0 insertions, 0 deletions
