diff options
author | John Polstra <jdp@FreeBSD.org> | 1998-08-08 17:48:26 +0000 |
---|---|---|
committer | John Polstra <jdp@FreeBSD.org> | 1998-08-08 17:48:26 +0000 |
commit | 43ab5f387738dff8a65a1d15d764b7fc18447f89 (patch) | |
tree | dbdfccee6242b50f041daacb80fe02de80e159ae /usr.bin | |
parent | 4f24ba2fac5ea816d04085b5abcd0a17b3c65a1a (diff) | |
download | src-43ab5f387738dff8a65a1d15d764b7fc18447f89.tar.gz src-43ab5f387738dff8a65a1d15d764b7fc18447f89.zip |
Don't ignore symbols containing "$". C++ destructors and other
special functions have names containing dollar signs, and ignoring
them causes gprof to produce incorrect and sometimes bizarre results.
The comment in the original code said that dollar signs were excluded
because they are used in Pascal labels. That's not much of an
issue these days.
Notes
Notes:
svn path=/head/; revision=38194
Diffstat (limited to 'usr.bin')
-rw-r--r-- | usr.bin/gprof/gprof.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/usr.bin/gprof/gprof.c b/usr.bin/gprof/gprof.c index 6ad996293ff9..185e2c620b6e 100644 --- a/usr.bin/gprof/gprof.c +++ b/usr.bin/gprof/gprof.c @@ -42,7 +42,7 @@ static const char copyright[] = static char sccsid[] = "@(#)gprof.c 8.1 (Berkeley) 6/6/93"; #endif static const char rcsid[] = - "$Id: gprof.c,v 1.5 1997/07/10 06:45:00 charnier Exp $"; + "$Id: gprof.c,v 1.6 1997/07/15 08:04:40 charnier Exp $"; #endif /* not lint */ #include <err.h> @@ -728,8 +728,7 @@ funcsymbol( nlistp ) /* * name must start with an underscore if uflag is set. * can't have any `funny' characters in name, - * where `funny' includes `.', .o file names - * and `$', pascal labels. + * where `funny' means `.' (.o file names) * need to make an exception for sparc .mul & co. * perhaps we should just drop this code entirely... */ @@ -747,7 +746,7 @@ funcsymbol( nlistp ) } #endif while ( c = *name++ ) { - if ( c == '.' || c == '$' ) { + if ( c == '.' ) { return FALSE; } } |