| Index: third_party/tcmalloc/chromium/src/google/profiler.h
|
| diff --git a/third_party/tcmalloc/chromium/src/google/profiler.h b/third_party/tcmalloc/chromium/src/google/profiler.h
|
| index 07323e450bfa500596cad0ae7827732c8a57ca6e..67a89c198b195ec333128077f530774ab44c763c 100644
|
| --- a/third_party/tcmalloc/chromium/src/google/profiler.h
|
| +++ b/third_party/tcmalloc/chromium/src/google/profiler.h
|
| @@ -26,141 +26,9 @@
|
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
| * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
| - *
|
| - * ---
|
| - * Author: Sanjay Ghemawat
|
| - *
|
| - * Module for CPU profiling based on periodic pc-sampling.
|
| - *
|
| - * For full(er) information, see doc/cpuprofile.html
|
| - *
|
| - * This module is linked into your program with
|
| - * no slowdown caused by this unless you activate the profiler
|
| - * using one of the following methods:
|
| - *
|
| - * 1. Before starting the program, set the environment variable
|
| - * "PROFILE" to be the name of the file to which the profile
|
| - * data should be written.
|
| - *
|
| - * 2. Programmatically, start and stop the profiler using the
|
| - * routines "ProfilerStart(filename)" and "ProfilerStop()".
|
| - *
|
| - *
|
| - * (Note: if using linux 2.4 or earlier, only the main thread may be
|
| - * profiled.)
|
| - *
|
| - * Use pprof to view the resulting profile output.
|
| - * % pprof <path_to_executable> <profile_file_name>
|
| - * % pprof --gv <path_to_executable> <profile_file_name>
|
| - *
|
| - * These functions are thread-safe.
|
| */
|
|
|
| -#ifndef BASE_PROFILER_H_
|
| -#define BASE_PROFILER_H_
|
| -
|
| -#include <time.h> /* For time_t */
|
| -
|
| -/* Annoying stuff for windows; makes sure clients can import these functions */
|
| -#ifndef PERFTOOLS_DLL_DECL
|
| -# ifdef _WIN32
|
| -# define PERFTOOLS_DLL_DECL __declspec(dllimport)
|
| -# else
|
| -# define PERFTOOLS_DLL_DECL
|
| -# endif
|
| -#endif
|
| -
|
| -/* All this code should be usable from within C apps. */
|
| -#ifdef __cplusplus
|
| -extern "C" {
|
| -#endif
|
| -
|
| -/* Profiler options, for use with ProfilerStartWithOptions. To use:
|
| - *
|
| - * struct ProfilerOptions options;
|
| - * memset(&options, 0, sizeof options);
|
| - *
|
| - * then fill in fields as needed.
|
| - *
|
| - * This structure is intended to be usable from C code, so no constructor
|
| - * is provided to initialize it. (Use memset as described above).
|
| - */
|
| -struct ProfilerOptions {
|
| - /* Filter function and argument.
|
| - *
|
| - * If filter_in_thread is not NULL, when a profiling tick is delivered
|
| - * the profiler will call:
|
| - *
|
| - * (*filter_in_thread)(filter_in_thread_arg)
|
| - *
|
| - * If it returns nonzero, the sample will be included in the profile.
|
| - * Note that filter_in_thread runs in a signal handler, so must be
|
| - * async-signal-safe.
|
| - *
|
| - * A typical use would be to set up filter results for each thread
|
| - * in the system before starting the profiler, then to make
|
| - * filter_in_thread be a very simple function which retrieves those
|
| - * results in an async-signal-safe way. Retrieval could be done
|
| - * using thread-specific data, or using a shared data structure that
|
| - * supports async-signal-safe lookups.
|
| - */
|
| - int (*filter_in_thread)(void *arg);
|
| - void *filter_in_thread_arg;
|
| -};
|
| -
|
| -/* Start profiling and write profile info into fname.
|
| - *
|
| - * This is equivalent to calling ProfilerStartWithOptions(fname, NULL).
|
| +/* The code has moved to gperftools/. Use that include-directory for
|
| + * new code.
|
| */
|
| -PERFTOOLS_DLL_DECL int ProfilerStart(const char* fname);
|
| -
|
| -/* Start profiling and write profile into fname.
|
| - *
|
| - * The profiler is configured using the options given by 'options'.
|
| - * Options which are not specified are given default values.
|
| - *
|
| - * 'options' may be NULL, in which case all are given default values.
|
| - *
|
| - * Returns nonzero if profiling was started sucessfully, or zero else.
|
| - */
|
| -PERFTOOLS_DLL_DECL int ProfilerStartWithOptions(
|
| - const char *fname, const struct ProfilerOptions *options);
|
| -
|
| -/* Stop profiling. Can be started again with ProfilerStart(), but
|
| - * the currently accumulated profiling data will be cleared.
|
| - */
|
| -PERFTOOLS_DLL_DECL void ProfilerStop();
|
| -
|
| -/* Flush any currently buffered profiling state to the profile file.
|
| - * Has no effect if the profiler has not been started.
|
| - */
|
| -PERFTOOLS_DLL_DECL void ProfilerFlush();
|
| -
|
| -
|
| -/* DEPRECATED: these functions were used to enable/disable profiling
|
| - * in the current thread, but no longer do anything.
|
| - */
|
| -PERFTOOLS_DLL_DECL void ProfilerEnable();
|
| -PERFTOOLS_DLL_DECL void ProfilerDisable();
|
| -
|
| -/* Returns nonzero if profile is currently enabled, zero if it's not. */
|
| -PERFTOOLS_DLL_DECL int ProfilingIsEnabledForAllThreads();
|
| -
|
| -/* Routine for registering new threads with the profiler.
|
| - */
|
| -PERFTOOLS_DLL_DECL void ProfilerRegisterThread();
|
| -
|
| -/* Stores state about profiler's current status into "*state". */
|
| -struct ProfilerState {
|
| - int enabled; /* Is profiling currently enabled? */
|
| - time_t start_time; /* If enabled, when was profiling started? */
|
| - char profile_name[1024]; /* Name of profile file being written, or '\0' */
|
| - int samples_gathered; /* Number of samples gathered so far (or 0) */
|
| -};
|
| -PERFTOOLS_DLL_DECL void ProfilerGetCurrentState(struct ProfilerState* state);
|
| -
|
| -#ifdef __cplusplus
|
| -} // extern "C"
|
| -#endif
|
| -
|
| -#endif /* BASE_PROFILER_H_ */
|
| +#include <gperftools/profiler.h>
|
|
|