aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/nm
diff options
context:
space:
mode:
authorRob Pike <r@golang.org>2009-04-15 21:57:55 -0700
committerRob Pike <r@golang.org>2009-04-15 21:57:55 -0700
commit57bff962d97b712fbbd2c81af46b770684114fbd (patch)
tree4eeeec3fc7613746ad39445dd7401067dcc40dba /src/cmd/nm
parent55faa5f10eb887dfdd4eb6f525e059fc0047f6a1 (diff)
downloadgo-57bff962d97b712fbbd2c81af46b770684114fbd.tar.xz
fix gotest by fixing nm -s to print in file order by storing a sequence number
as the .6 file is read. now tests will be run in file order. R=rsc DELTA=9 (6 added, 1 deleted, 2 changed) OCL=27542 CL=27544
Diffstat (limited to 'src/cmd/nm')
-rw-r--r--src/cmd/nm/nm.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/cmd/nm/nm.c b/src/cmd/nm/nm.c
index 63c77bd921..66748eef7c 100644
--- a/src/cmd/nm/nm.c
+++ b/src/cmd/nm/nm.c
@@ -185,11 +185,13 @@ cmp(void *vs, void *vt)
s = vs;
t = vt;
- if(nflag)
+ if(nflag) // sort on address (numeric) order
if((*s)->value < (*t)->value)
return -1;
else
return (*s)->value > (*t)->value;
+ if(sflag) // sort on file order (sequence)
+ return (*s)->sequence - (*t)->sequence;
return strcmp((*s)->name, (*t)->name);
}
/*
@@ -298,8 +300,7 @@ printsyms(Sym **symptr, long nsym)
char *cp;
char path[512];
- if(!sflag)
- qsort(symptr, nsym, sizeof(*symptr), (void*)cmp);
+ qsort(symptr, nsym, sizeof(*symptr), (void*)cmp);
wid = 0;
for (i=0; i<nsym; i++) {