}
}
+static void
+ginsadd(int as, vlong off, Node *dst)
+{
+ Node n1;
+
+ regalloc(&n1, types[tptr], dst);
+ gmove(dst, &n1);
+ ginscon(as, off, &n1);
+ gmove(&n1, dst);
+ regfree(&n1);
+}
+
/*
* generate:
* res = &n;
}
cgen(n->heapaddr, res);
if(n->xoffset != 0) {
- ginscon(optoas(OADD, types[tptr]), n->xoffset, res);
+ ginsadd(optoas(OADD, types[tptr]), n->xoffset, res);
}
break;
case ODOT:
agen(nl, res);
if(n->xoffset != 0) {
- ginscon(optoas(OADD, types[tptr]), n->xoffset, res);
+ ginsadd(optoas(OADD, types[tptr]), n->xoffset, res);
}
break;
cgen(nl, res);
cgen_checknil(res);
if(n->xoffset != 0) {
- ginscon(optoas(OADD, types[tptr]), n->xoffset, res);
+ ginsadd(optoas(OADD, types[tptr]), n->xoffset, res);
}
break;
}
{
Chain ch;
LSym *s;
+
+ if(thechar == '9')
+ return;
morestack = linklookup(ctxt, "runtime.morestack", 0);
newstack = linklookup(ctxt, "runtime.newstack", 0);