From: Kai Backman Date: Tue, 15 Sep 2009 23:14:49 +0000 (-0700) Subject: patch in proper branch address in zaddr output X-Git-Tag: weekly.2009-11-06~571 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=ff196fbde7c1fa9546c466e30be446881051d5e9;p=gostls13.git patch in proper branch address in zaddr output R=rsc APPROVED=rsc DELTA=12 (11 added, 1 deleted, 0 changed) OCL=34658 CL=34664 --- diff --git a/src/cmd/5g/gobj.c b/src/cmd/5g/gobj.c index 3ab5dcae43..99855c0da6 100644 --- a/src/cmd/5g/gobj.c +++ b/src/cmd/5g/gobj.c @@ -120,7 +120,6 @@ zaddr(Biobuf *b, Addr *a, int s) Bputc(b, l>>24); // fall through case D_OREG: case D_CONST: - case D_BRANCH: case D_SHIFT: case D_STATIC: case D_AUTO: @@ -133,6 +132,17 @@ zaddr(Biobuf *b, Addr *a, int s) Bputc(b, l>>24); break; + case D_BRANCH: + if(a->branch == nil) + fatal("unpatched branch"); + a->offset = a->branch->loc; + l = a->offset; + Bputc(b, l); + Bputc(b, l>>8); + Bputc(b, l>>16); + Bputc(b, l>>24); + break; + case D_SCONST: n = a->sval; for(i=0; i