diff options
| author | forsyth <forsyth@vitanuova.com> | 2010-07-22 11:56:14 +0100 |
|---|---|---|
| committer | forsyth <forsyth@vitanuova.com> | 2010-07-22 11:56:14 +0100 |
| commit | ce8e0d607a2bec33fcaac7237d0b5535e5b152a1 (patch) | |
| tree | 41e7f8c5524e6636b88085bb8d675e041ffd4c52 /utils | |
| parent | 98a84ad18808c4c7892dac82539cd678dc45e952 (diff) | |
20100722
Diffstat (limited to 'utils')
| -rw-r--r-- | utils/0l/obj.c | 2 | ||||
| -rw-r--r-- | utils/0l/sched.c | 2 | ||||
| -rw-r--r-- | utils/acid/builtin.c | 8 | ||||
| -rw-r--r-- | utils/acid/print.c | 8 | ||||
| -rw-r--r-- | utils/kprof/kprof.c | 2 | ||||
| -rw-r--r-- | utils/ms2/ms2.c | 12 | ||||
| -rw-r--r-- | utils/nm/nm.c | 27 |
7 files changed, 38 insertions, 23 deletions
diff --git a/utils/0l/obj.c b/utils/0l/obj.c index 644925ac..d4ba70e5 100644 --- a/utils/0l/obj.c +++ b/utils/0l/obj.c @@ -165,7 +165,7 @@ main(int argc, char *argv[]) print("warning: -D0x%lux is ignored because of -R0x%lux\n", INITDAT, INITRND); if(debug['v']) - Bprint(&bso, "HEADER = -H0x%ld -T0x%lux -D0x%lux -R0x%lux\n", + Bprint(&bso, "HEADER = -H0x%x -T0x%lux -D0x%lux -R0x%lux\n", HEADTYPE, INITTEXT, INITDAT, INITRND); Bflush(&bso); zprg.as = AGOK; diff --git a/utils/0l/sched.c b/utils/0l/sched.c index 28e78f28..2f4b60f2 100644 --- a/utils/0l/sched.c +++ b/utils/0l/sched.c @@ -53,7 +53,7 @@ sched(Prog *p0, Prog *pe) s->p = *p; markregused(s, p); if(debug['X']) { - Bprint(&bso, "%P%|set", &s->p, 40); + Bprint(&bso, "%P\t\tset", &s->p); dumpbits(s, &s->set); Bprint(&bso, "; used"); dumpbits(s, &s->used); diff --git a/utils/acid/builtin.c b/utils/acid/builtin.c index 56c4dceb..1d8b0e77 100644 --- a/utils/acid/builtin.c +++ b/utils/acid/builtin.c @@ -915,10 +915,10 @@ patom(char type, Store *res) Bprint(bout, "%3d", (int)res->u0.sival&0xff); break; case 'X': - Bprint(bout, "%.8lux", (int)res->u0.sival); + Bprint(bout, "%.8ux", (int)res->u0.sival); break; case 'x': - Bprint(bout, "%.4lux", (int)res->u0.sival&0xffff); + Bprint(bout, "%.4ux", (int)res->u0.sival&0xffff); break; case 'Y': Bprint(bout, "%.16llux", res->u0.sival); @@ -933,7 +933,7 @@ patom(char type, Store *res) Bprint(bout, "%ud", (int)res->u0.sival&0xffff); break; case 'U': - Bprint(bout, "%ud", (ulong)res->u0.sival); + Bprint(bout, "%lud", (ulong)res->u0.sival); break; case 'Z': Bprint(bout, "%llud", res->u0.sival); @@ -972,7 +972,7 @@ patom(char type, Store *res) if(type != TSTRING) Bprint(bout, "*%c<%s>*", res->fmt, typenames[type]); else - Bprint(bout, "%S", res->u0.sstring->string); + Bprint(bout, "%S", (Rune*)res->u0.sstring->string); break; case 'a': case 'A': diff --git a/utils/acid/print.c b/utils/acid/print.c index 8043fcd7..3a101b80 100644 --- a/utils/acid/print.c +++ b/utils/acid/print.c @@ -201,10 +201,10 @@ pcode(Node *n, int d) Bprint(bout, "%.*sif ", d, tabs); pexpr(l); d++; - Bprint(bout, " then\n", d, tabs); + Bprint(bout, "%.*sthen\n", d, tabs); if(r && r->op == OELSE) { slist(r->left, d); - Bprint(bout, "%.*selse\n", d-1, tabs, d, tabs); + Bprint(bout, "%.*selse\n", d-1, tabs); slist(r->right, d); } else @@ -214,7 +214,7 @@ pcode(Node *n, int d) Bprint(bout, "%.*swhile ", d, tabs); pexpr(l); d++; - Bprint(bout, " do\n", d, tabs); + Bprint(bout, "%.*sdo\n", d, tabs); slist(r, d); break; case ORET: @@ -387,7 +387,7 @@ pexpr(Node *n) pexpr(l); break; case OWHAT: - Bprint(bout, "whatis", n->sym->name); + Bprint(bout, "whatis"); if(n->sym) Bprint(bout, " %s", n->sym->name); break; diff --git a/utils/kprof/kprof.c b/utils/kprof/kprof.c index a524815e..41ba3854 100644 --- a/utils/kprof/kprof.c +++ b/utils/kprof/kprof.c @@ -146,7 +146,7 @@ main(int argc, char *argv[]) Binit(&outbuf, 1, OWRITE); Bprint(&outbuf, "ms %% sym\n"); while(--k>=0) - Bprint(&outbuf, "%lud\t%3lud.%d\t%s\n", + Bprint(&outbuf, "%lud\t%3lud.%ld\t%s\n", tickstoms(cp[k].time), 100*cp[k].time/delta, (1000*cp[k].time/delta)%10, diff --git a/utils/ms2/ms2.c b/utils/ms2/ms2.c index e36307db..9644e0c8 100644 --- a/utils/ms2/ms2.c +++ b/utils/ms2/ms2.c @@ -136,11 +136,11 @@ record(uchar *s, int l) ulong cksum; if(addr & (0xFF<<24)){ - Bprint(&bout, "S3%.2X%.8X", l+5, addr); + Bprint(&bout, "S3%.2X%.8lX", l+5, addr); cksum = l+5; cksum += (addr>>24)&0xff; }else{ - Bprint(&bout, "S2%.2X%.6X", l+4, addr); + Bprint(&bout, "S2%.2X%.6lX", l+4, addr); cksum = l+4; } cksum += addr&0xff; @@ -151,7 +151,7 @@ record(uchar *s, int l) cksum += *s; Bprint(&bout, "%.2X", *s++); } - Bprint(&bout, "%.2X\n", (~cksum)&0xff); + Bprint(&bout, "%.2lX\n", (~cksum)&0xff); addr += l; } @@ -168,14 +168,14 @@ trailer(ulong a) cksum = 0; if(a & (0xFF<<24)){ - Bprint(&bout, "S7%.8X", a); + Bprint(&bout, "S7%.8lX", a); cksum += (a>>24)&0xff; }else - Bprint(&bout, "S9%.6X", a); + Bprint(&bout, "S9%.6lX", a); cksum += a&0xff; cksum += (a>>8)&0xff; cksum += (a>>16)&0xff; - Bprint(&bout, "%.2X\n", (~cksum)&0xff); + Bprint(&bout, "%.2lX\n", (~cksum)&0xff); } void diff --git a/utils/nm/nm.c b/utils/nm/nm.c index cf36ad10..147d1d3a 100644 --- a/utils/nm/nm.c +++ b/utils/nm/nm.c @@ -20,6 +20,7 @@ int hflag; int nflag; int sflag; int uflag; +int Tflag; Sym **fnames; /* file path translation table */ Sym **symptr; @@ -36,6 +37,13 @@ void dofile(Biobuf*); void zenter(Sym*); void +usage(void) +{ + fprint(2, "usage: nm [-aghnsTu] file ...\n"); + exits("usage"); +} + +void main(int argc, char *argv[]) { int i; @@ -44,13 +52,17 @@ main(int argc, char *argv[]) Binit(&bout, 1, OWRITE); argv0 = argv[0]; ARGBEGIN { + default: usage(); case 'a': aflag = 1; break; case 'g': gflag = 1; break; case 'h': hflag = 1; break; case 'n': nflag = 1; break; case 's': sflag = 1; break; case 'u': uflag = 1; break; + case 'T': Tflag = 1; break; } ARGEND + if (argc == 0) + usage(); if (argc > 1) multifile++; for(i=0; i<argc; i++){ @@ -78,14 +90,15 @@ main(int argc, char *argv[]) void doar(Biobuf *bp) { - int offset, size, obj; + vlong offset; + int size, obj; char membername[SARNAME]; multifile = 1; for (offset = Boffset(bp);;offset += size) { size = nextar(bp, offset, membername); if (size < 0) { - error("phase error on ar header %ld", offset); + error("phase error on ar header %lld", offset); return; } if (size == 0) @@ -141,10 +154,10 @@ cmp(const void *vs, const void *vt) s = (Sym**)vs; t = (Sym**)vt; if(nflag) - if((ulong)(*s)->value < (ulong)(*t)->value) + if((*s)->value < (*t)->value) return -1; else - return (ulong)(*s)->value > (ulong)(*t)->value; + return (*s)->value > (*t)->value; return strcmp((*s)->name, (*t)->name); } /* @@ -155,7 +168,7 @@ zenter(Sym *s) { static int maxf = 0; - if (s->value > maxf) { + if (s->value >= maxf) { maxf = (s->value+CHUNK-1) &~ (CHUNK-1); fnames = realloc(fnames, maxf*sizeof(*fnames)); if(fnames == 0) { @@ -263,8 +276,10 @@ printsyms(Sym **symptr, long nsym) cp = path; } else cp = s->name; + if (Tflag) + Bprint(&bout, "%8ux ", s->sig); if (s->value || s->type == 'a' || s->type == 'p') - Bprint(&bout, "%8lux %c %s\n", s->value, s->type, cp); + Bprint(&bout, "%8llux %c %s\n", s->value, s->type, cp); else Bprint(&bout, " %c %s\n", s->type, cp); } |
