Blocks dominated by "if false" should be retained in the initial SSA form so they remain visible to subsequent source code analysis tools. In any case, true compilers already need a stronger version of this optimization so they can simplify CFGs such as this: const x, y = ... switch x {case y:...} where a branch is constant but the comparison of constants does not occur within an expression. LGTM=gri R=gri CC=golang-codereviews, pcc https://golang.org/cl/101250043 |
||
---|---|---|
.. | ||
src |