1
0
mirror of https://github.com/golang/go synced 2024-11-20 08:04:42 -07:00

cmd/5c: fix dataflag annotation

file        old_size     new_size    base@c1ce95068533
bin/go      14717392     6287824     5918236

this huge size difference is due to GC data for runtime.mheap
(NOPTR dataflag is not obeyed).

R=rsc, dave
CC=golang-dev
https://golang.org/cl/6547051
This commit is contained in:
Shenghou Ma 2012-09-25 14:42:44 +08:00
parent 4391abfb1d
commit f2fadfefaf

View File

@ -1176,17 +1176,15 @@ patch(Prog *op, int32 pc)
void void
gpseudo(int a, Sym *s, Node *n) gpseudo(int a, Sym *s, Node *n)
{ {
nextpc(); nextpc();
p->as = a; p->as = a;
p->from.type = D_OREG; p->from.type = D_OREG;
p->from.sym = s; p->from.sym = s;
p->from.name = D_EXTERN; p->from.name = D_EXTERN;
if(a == ATEXT) { if(a == ATEXT || a == AGLOBL) {
p->reg = textflag; p->reg = textflag;
textflag = 0; textflag = 0;
} else if(a == AGLOBL) }
p->reg = 0;
if(s->class == CSTATIC) if(s->class == CSTATIC)
p->from.name = D_STATIC; p->from.name = D_STATIC;
naddr(n, &p->to); naddr(n, &p->to);