return n
}
- // orderstmt arranged for a copy of the array/slice variable if needed.
+ // order.stmt arranged for a copy of the array/slice variable if needed.
ha := a
hv1 := temp(types.Types[TINT])
n.List.Set1(a)
case TMAP:
- // orderstmt allocated the iterator for us.
+ // order.stmt allocated the iterator for us.
// we only use a once, so no copy needed.
ha := a
}
case TCHAN:
- // orderstmt arranged for a copy of the channel variable.
+ // order.stmt arranged for a copy of the channel variable.
ha := a
n.Left = nil
// // original body
// }
- // orderstmt arranged for a copy of the string variable.
+ // order.stmt arranged for a copy of the string variable.
ha := a
hv1 := temp(types.Types[TINT])
case ORECV:
// x = <-c; n.Left is x, n.Right.Left is c.
- // orderstmt made sure x is addressable.
+ // order.stmt made sure x is addressable.
n.Right.Left = walkexpr(n.Right.Left, init)
n1 := nod(OADDR, n.Left, nil)
key = r.Right
} else {
// standard version takes key by reference
- // orderexpr made sure key is addressable.
+ // order.expr made sure key is addressable.
key = nod(OADDR, r.Right, nil)
}
t := map_.Type
fast := mapfast(t)
if fast == mapslow {
- // orderstmt made sure key is addressable.
+ // order.stmt made sure key is addressable.
key = nod(OADDR, key, nil)
}
n = mkcall1(mapfndel(mapdelete[fast], t), nil, init, typename(t), map_, key)
// Orderexpr arranged for n.Left to be a temporary for all
// the conversions it could see. Comparison of an interface
// with a non-interface, especially in a switch on interface value
- // with non-interface cases, is not visible to orderstmt, so we
+ // with non-interface cases, is not visible to order.stmt, so we
// have to fall back on allocating a temp here.
if !islvalue(v) {
v = copyexpr(v, v.Type, init)
fast := mapfast(t)
if fast == mapslow {
// standard version takes key by reference.
- // orderexpr made sure key is addressable.
+ // order.expr made sure key is addressable.
key = nod(OADDR, key, nil)
}
n = mkcall1(mapfn(mapassign[fast], t), nil, init, typename(t), map_, key)
fast := mapfast(t)
if fast == mapslow {
// standard version takes key by reference.
- // orderexpr made sure key is addressable.
+ // order.expr made sure key is addressable.
key = nod(OADDR, key, nil)
}
}
func addstr(n *Node, init *Nodes) *Node {
- // orderexpr rewrote OADDSTR to have a list of strings.
+ // order.expr rewrote OADDSTR to have a list of strings.
c := n.List.Len()
if c < 2 {
var fn string
if c <= 5 {
// small numbers of strings use direct runtime helpers.
- // note: orderexpr knows this cutoff too.
+ // note: order.expr knows this cutoff too.
fn = fmt.Sprintf("concatstring%d", c)
} else {
// large numbers of strings are passed to the runtime as a slice.