6/simp.c
/* Simplify tuple construction to a stack allocated
 * value by evaluating the rvalue of each node on the
 * rhs and assigning it to the correct offset from the
 * head of the tuple. */
Simplify tuple construction to a stack allocated
value by evaluating the rvalue of each node on the
rhs and assigning it to the correct offset from the
head of the tuple.
Simplify tuple construction to a stack allocated value by evaluating the rvalue of each node on the rhs and assigning it to the correct offset from the head of the tuple .
static Node *simptup(Simp *s, Node *n, Node *dst)
{
    Node **args;
    Node *r;
    size_t i, off;
    args = n->expr.args;
    if (!dst)
        dst = temp(s, n);
    r = addr(s, dst, exprtype(dst));
    off = 0;
    for (i = 0; i < n->expr.nargs; i++) {
        off = alignto(off, exprtype(args[i]));
        assignat(s, r, off, rval(s, args[i], NULL));
        off += size(args[i]);
    }
    return dst;
}
static Node * simptup ( Simp * s , Node * n , Node * dst ) { Node * * args ; Node * r ; size_t i , off ; args = n -> expr . args ; if ( ! dst ) dst = temp ( s , n ) ; r = addr ( s , dst , exprtype ( dst ) ) ; off = 0 ; for ( i = 0 ; i < n -> expr . nargs ; i ++ ) { off = alignto ( off , exprtype ( args [ i ] ) ) ; assignat ( s , r , off , rval ( s , args [ i ] , NULL ) ) ; off += size ( args [ i ] ) ; } return dst ; }
Simplify tuple construction to a stack allocated
 value by evaluating the rvalue of each node on the
 rhs and assigning it to the correct offset from the
 head of the tuple.
Simplify tuple construction to a stack allocated value by evaluating the rvalue of each node on the rhs and assigning it to the correct offset from the head of the tuple .