1
0
mirror of https://github.com/golang/go synced 2024-11-23 08:10:03 -07:00

cmd/gc: do not generate dead value maps yet

We are not clearing dead values in the garbage collector so it
is not worth the RSS cost to materialize the data and write it
out to the binary.

R=golang-dev, iant, cshapiro
CC=golang-dev
https://golang.org/cl/38650043
This commit is contained in:
Carl Shapiro 2013-12-06 15:49:47 -08:00
parent d4f68f2892
commit 6965a752a7

View File

@ -153,7 +153,15 @@ compile(Node *fn)
gcargs = makefuncdatasym("gcargs·%d", FUNCDATA_ArgsPointerMaps);
gclocals = makefuncdatasym("gclocals·%d", FUNCDATA_LocalsPointerMaps);
gcdead = makefuncdatasym("gcdead·%d", FUNCDATA_DeadPointerMaps);
// TODO(cshapiro): emit the dead value map when the garbage collector
// pre-verification pass is checked in. It is otherwise harmless to
// emit this information if it is not used but it does cost RSS at
// compile time. At present, the amount of additional RSS is
// substantial enough to affect our smallest build machines.
if(0)
gcdead = makefuncdatasym("gcdead·%d", FUNCDATA_DeadPointerMaps);
else
gcdead = nil;
for(t=curfn->paramfld; t; t=t->down)
gtrack(tracksym(t->type));