I have committed the bits needed to use GCC's basicblock profiling
on -current.
Make sure to recompile the kernbb(8) program first.
Here's an simple example how to profile a single file (vfs_bio.c):
cd /sys/i386/conf
config YOURKERNEL
cd ../compile/YOURKERNEL
make depend && make all
rm vfs_bio.o
make vfs_bio.o DEBUG="--test-coverage --profile-arcs"
make all && make install
reboot
# run your test.
kernbb
cd /sys/i386/compile/YOURKERNEL
gcov vfs_bio.c
# examine vfs_bio.c.gcov
If you want to profile multiple files, you just give them all the
same treatment as vfs_bio.
It's perfectly possible to profile the entire kernel if you want to.
--
Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
[EMAIL PROTECTED] | TCP/IP since RFC 956
FreeBSD committer | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message