mirror of
https://github.com/golang/go
synced 2024-11-18 16:44:43 -07:00
runtime: zero pointer-looking scalararg values
I have a CL which at every gc looks through data and bss sections for nonpointer data (according to gc maps) that looks like a pointer. These are potential missing roots. The only thing it finds are begnign, storing stack pointers into m0.scalararg[1] and never cleaning them up. Let's clean them up now so the test CL passes all.bash cleanly. The test CL can't be checked in because we might store pointer-looking things in nonpointer data by accident. LGTM=iant R=golang-codereviews, iant, khr CC=golang-codereviews https://golang.org/cl/153210043
This commit is contained in:
parent
6ea3746adf
commit
dcc4a674d8
@ -31,6 +31,7 @@ runtime·deferproc_m(void)
|
||||
argp = g->m->scalararg[1];
|
||||
callerpc = g->m->scalararg[2];
|
||||
g->m->ptrarg[0] = nil;
|
||||
g->m->scalararg[1] = 0;
|
||||
|
||||
d = runtime·newdefer(siz);
|
||||
d->fn = fn;
|
||||
@ -131,6 +132,7 @@ runtime·dopanic_m(void)
|
||||
g->m->ptrarg[0] = nil;
|
||||
pc = g->m->scalararg[0];
|
||||
sp = g->m->scalararg[1];
|
||||
g->m->scalararg[1] = 0;
|
||||
if(gp->sig != 0)
|
||||
runtime·printf("[signal %x code=%p addr=%p pc=%p]\n",
|
||||
gp->sig, gp->sigcode0, gp->sigcode1, gp->sigpc);
|
||||
|
Loading…
Reference in New Issue
Block a user