cmd/gc: allow registerization of temporaries created by inlining.

Names beginning with a dot are ignored by optimizers.

R=rsc, lvd, golang-dev, dave
CC=golang-dev
https://golang.org/cl/7098049
This commit is contained in:
Rémy Oudompheng 2013-01-18 22:25:17 +01:00
parent f579faa69d
commit dfdfba14b9
2 changed files with 3 additions and 3 deletions

View File

@ -638,7 +638,7 @@ funcargs(Node *nt)
if(n->left == N) {
// give it a name so escape analysis has nodes to work with
snprint(namebuf, sizeof(namebuf), ".anon%d", gen++);
snprint(namebuf, sizeof(namebuf), "~anon%d", gen++);
n->left = newname(lookup(namebuf));
n->left->orig = N; // signal that the original was absent
@ -653,7 +653,7 @@ funcargs(Node *nt)
*nn = *n->left;
n->left = nn;
snprint(namebuf, sizeof(namebuf), ".anon%d", gen++);
snprint(namebuf, sizeof(namebuf), "~anon%d", gen++);
n->left->sym = lookup(namebuf);
}

View File

@ -699,7 +699,7 @@ retvar(Type *t, int i)
{
Node *n;
snprint(namebuf, sizeof(namebuf), ".r%d", i);
snprint(namebuf, sizeof(namebuf), "~r%d", i);
n = newname(lookup(namebuf));
n->type = t->type;
n->class = PAUTO;