]> Cypherpunks.ru repositories - gostls13.git/commit
cmd/compile: sparse conditional constant propagation
authorYi Yang <qingfeng.yy@alibaba-inc.com>
Thu, 31 Aug 2023 02:48:34 +0000 (02:48 +0000)
committerKeith Randall <khr@golang.org>
Tue, 12 Sep 2023 21:01:50 +0000 (21:01 +0000)
commit4ee1d542eda8d8aab7ca2024a4a0a9068d3cad70
tree4c8d6efa3ca9b5d88d7d8c0f1f7f7c3f49fdd6a9
parenta843991fdd079c931d4e98c0a17c9ac6dc254fe8
cmd/compile: sparse conditional constant propagation

sparse conditional constant propagation can discover optimization
opportunities that cannot be found by just combining constant folding
and constant propagation and dead code elimination separately.

This is a re-submit of PR#59575, which fix a broken dominance relationship caught by ssacheck

Updates https://github.com/golang/go/issues/59399

Change-Id: I57482dee38f8e80a610aed4f64295e60c38b7a47
GitHub-Last-Rev: 830016f24e3a5320c6c127a48ab7c84e2fc672eb
GitHub-Pull-Request: golang/go#60469
Reviewed-on: https://go-review.googlesource.com/c/go/+/498795
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-by: Heschi Kreinick <heschi@google.com>
Reviewed-by: Keith Randall <khr@golang.org>
src/cmd/compile/internal/ssa/_gen/genericOps.go
src/cmd/compile/internal/ssa/block.go
src/cmd/compile/internal/ssa/compile.go
src/cmd/compile/internal/ssa/sccp.go [new file with mode: 0644]
src/cmd/compile/internal/ssa/sccp_test.go [new file with mode: 0644]
test/checkbce.go
test/codegen/compare_and_branch.go
test/loopbce.go