During block optimization, degenerate conditional logic such as "false && x" may result in single-predecessor blocks containing φ-nodes. (Ideally such φ-nodes would be replaced by their sole operand, but that requires Referrers information which isn't computed until later.) It is obviously not safe to fuse such blocks, so now we don't. Fixes golang/go#7840 LGTM=gri R=gri CC=golang-codereviews, pcc https://golang.org/cl/90620043 |
||
|---|---|---|
| astutil | ||
| blog | ||
| cmd | ||
| cover | ||
| dashboard | ||
| go | ||
| godoc | ||
| imports | ||
| oracle | ||
| playground | ||
| present | ||
| refactor | ||
| .hgignore | ||
| AUTHORS | ||
| CONTRIBUTORS | ||
| LICENSE | ||
| PATENTS | ||
| README | ||
| codereview.cfg | ||
README
This subrepository holds the source for various packages and tools that support the Go programming language. Some of the tools, godoc and vet for example, are included in binary Go distributions. Others, including the Go oracle and the test coverage tool, can be fetched with "go get". Packages include a type-checker for Go and an implementation of the Static Single Assignment form (SSA) representation for Go programs. To submit changes to this repository, see http://golang.org/doc/contribute.html.