Fixed high resolution profiling on arches that support it (amd64 and i386).  Use -mprofiler-epilogue again, and don't use -finstrument-functions. The former has been fixed for arches that implement high-res profiling, and the latter has been useless for kernel profiling since gcc-3.4 when it started forcing -fno-inline.  -fno-inline gives a kernel with performance characteristics too different from a normal kernel to be worth profiling, by turning off inlining of all the little optimized functions in headers.  This interacts especially badly with FreeBSD's use of "static inline" for all inlines in headers, by creating many separate copies of the little functions, so not inlining tends to increase cache pressure where it should reduce it, and (since gprof(1) doesn't understand the copies) the statistics for the little functions are hard to interpret even if you want them.
Fixed high resolution profiling on arches that support it (amd64 and
i386).  Use -mprofiler-epilogue again, and don't use -finstrument-functions.
The former has been fixed for arches that implement high-res profiling,
and the latter has been useless for kernel profiling since gcc-3.4
when it started forcing -fno-inline.  -fno-inline gives a kernel with
performance characteristics too different from a normal kernel to be
worth profiling, by turning off inlining of all the little optimized
functions in headers.  This interacts especially badly with FreeBSD's
use of "static inline" for all inlines in headers, by creating many
separate copies of the little functions, so not inlining tends to
increase cache pressure where it should reduce it, and (since gprof(1)
doesn't understand the copies) the statistics for the little functions
are hard to interpret even if you want them.

jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase