]> Cypherpunks repositories - gostls13.git/commitdiff
liblink: bug fixes for ppc64 %P format
authorRuss Cox <rsc@golang.org>
Wed, 28 Jan 2015 02:07:35 +0000 (21:07 -0500)
committerRuss Cox <rsc@golang.org>
Fri, 30 Jan 2015 02:49:43 +0000 (02:49 +0000)
- certain code paths were appending to the string without first clearing it.
- some prints were using spaces instead of tabs

Change-Id: I7a3d38289c8206682baf8942abf5a9950a56b449
Reviewed-on: https://go-review.googlesource.com/3511
Reviewed-by: Austin Clements <austin@google.com>
Reviewed-by: Dave Cheney <dave@cheney.net>
src/liblink/list9.c

index b63099a5aba93d8d8aff515cc0c446d1bf5815f4..ce0fb4b295ee7398883456b7cf8c248015e35dca 100644 (file)
@@ -92,18 +92,19 @@ Pconv(Fmt *fp)
        bigP = p;
        a = p->as;
 
+       str[0] = 0;
        if(a == ADATA || a == AINIT || a == ADYNT)
                sprint(str, "%.5lld (%L)        %A      %D/%d,%D", p->pc, p->lineno, a, &p->from, p->reg, &p->to);
        else if(a == ATEXT) {
                if(p->reg != 0)
-                       sprint(str, "%.5lld (%L)        %A      %D,%d,%lD", p->pc, p->lineno, a, &p->from, p->reg, &p->to);
+                       sprint(str, "%.5lld (%L)        %A      %D,%d,%lD", p->pc, p->lineno, a, &p->from, p->reg, &p->to);
                else
-                       sprint(str, "%.5lld (%L)        %A      %D,%lD", p->pc, p->lineno, a, &p->from, &p->to);
+                       sprint(str, "%.5lld (%L)        %A      %D,%lD", p->pc, p->lineno, a, &p->from, &p->to);
        } else if(a == AGLOBL) {
                if(p->reg != 0)
-                       sprint(str, "%.5lld (%L)        %A      %D,%d,%D", p->pc, p->lineno, a, &p->from, p->reg, &p->to);
+                       sprint(str, "%.5lld (%L)        %A      %D,%d,%D", p->pc, p->lineno, a, &p->from, p->reg, &p->to);
                else
-                       sprint(str, "%.5lld (%L)        %A      %D,%D", p->pc, p->lineno, a, &p->from, &p->to);
+                       sprint(str, "%.5lld (%L)        %A      %D,%D", p->pc, p->lineno, a, &p->from, &p->to);
        } else {
                if(p->mark & NOSCHED)
                        sprint(strchr(str, 0), "*");