From: Keith Randall Date: Sat, 11 Jul 2015 18:39:12 +0000 (-0700) Subject: [dev.ssa] cmd/compile/internal/ssa: Use Ninit from expressions X-Git-Tag: go1.7beta1~1623^2^2~402 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=06f329220f63dab5f09cdef8bfd42bd6dc6c3a68;p=gostls13.git [dev.ssa] cmd/compile/internal/ssa: Use Ninit from expressions If an expression has an Ninit list, generate code for it. Required for (at least) OANDAND. Change-Id: I94c9e22e2a76955736f4a8e574d92711419c5e5c Reviewed-on: https://go-review.googlesource.com/12072 Reviewed-by: Brad Fitzpatrick --- diff --git a/src/cmd/compile/internal/gc/ssa.go b/src/cmd/compile/internal/gc/ssa.go index 96ae49a179..ab16a33510 100644 --- a/src/cmd/compile/internal/gc/ssa.go +++ b/src/cmd/compile/internal/gc/ssa.go @@ -393,7 +393,6 @@ func (s *state) stmt(n *Node) { s.startBlock(bCond) var cond *ssa.Value if n.Left != nil { - s.stmtList(n.Left.Ninit) cond = s.expr(n.Left) } else { cond = s.entryNewValue0A(ssa.OpConst, Types[TBOOL], true) @@ -453,6 +452,7 @@ func (s *state) expr(n *Node) *ssa.Value { s.pushLine(n.Lineno) defer s.popLine() + s.stmtList(n.Ninit) switch n.Op { case ONAME: if n.Class == PFUNC {