diff options
author | Russ Cox <rsc@golang.org> | 2011-10-03 17:46:36 -0400 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2011-10-03 17:46:36 -0400 |
commit | d2bac7dd534aa4b2ffe75ef88f5804b703d88d11 (patch) | |
tree | c2cb4ba43e66a16a02d0bd4904e297b5aa59ab08 /src/cmd/gc/bits.c | |
parent | e65ba656977ab00356368d9a0286c1036e770117 (diff) | |
download | go-d2bac7dd534aa4b2ffe75ef88f5804b703d88d11.tar.gz |
5g, 6g, 8g: registerize variables again
My previous CL:
changeset: 9645:ce2e5f44b310
user: Russ Cox <rsc@golang.org>
date: Tue Sep 06 10:24:21 2011 -0400
summary: gc: unify stack frame layout
introduced a bug wherein no variables were
being registerized, making Go programs 2-3x
slower than they had been before.
This CL fixes that bug (along with some others
it was hiding) and adds a test that optimization
makes at least one test case faster.
R=ken2
CC=golang-dev
http://codereview.appspot.com/5174045
Diffstat (limited to 'src/cmd/gc/bits.c')
-rw-r--r-- | src/cmd/gc/bits.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/cmd/gc/bits.c b/src/cmd/gc/bits.c index f3b031cc3..591288db6 100644 --- a/src/cmd/gc/bits.c +++ b/src/cmd/gc/bits.c @@ -151,9 +151,9 @@ Qconv(Fmt *fp) else fmtprint(fp, " "); if(var[i].node == N || var[i].node->sym == S) - fmtprint(fp, "$%lld", var[i].offset); + fmtprint(fp, "$%lld", i); else { - fmtprint(fp, var[i].node->sym->name); + fmtprint(fp, "%s", var[i].node->sym->name); if(var[i].offset != 0) fmtprint(fp, "%+lld", (vlong)var[i].offset); } |