summaryrefslogtreecommitdiffstats
path: root/src/proto/profiler.pro
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2019-07-13 22:59:32 +0200
committerBram Moolenaar <Bram@vim.org>2019-07-13 22:59:32 +0200
commitfa55cfc69d2b14761e2a8bd85bc1e0d82df770aa (patch)
tree3420b78d3aa0d58695f9a660592b655ac2f22fb1 /src/proto/profiler.pro
parentd5abb4c87727eecb71b0e8ffdda60fc9598272f3 (diff)
patch 8.1.1684: profiling functionality is spread outv8.1.1684
Problem: Profiling functionality is spread out. Solution: Put profiling functionality in profiling.c. (Yegappan Lakshmanan, closes #4666)
Diffstat (limited to 'src/proto/profiler.pro')
-rw-r--r--src/proto/profiler.pro34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/proto/profiler.pro b/src/proto/profiler.pro
new file mode 100644
index 0000000000..e7bcb479a1
--- /dev/null
+++ b/src/proto/profiler.pro
@@ -0,0 +1,34 @@
+/* profiler.c */
+void profile_start(proftime_T *tm);
+void profile_end(proftime_T *tm);
+void profile_sub(proftime_T *tm, proftime_T *tm2);
+char *profile_msg(proftime_T *tm);
+float_T profile_float(proftime_T *tm);
+void profile_setlimit(long msec, proftime_T *tm);
+int profile_passed_limit(proftime_T *tm);
+void profile_zero(proftime_T *tm);
+void profile_divide(proftime_T *tm, int count, proftime_T *tm2);
+void profile_add(proftime_T *tm, proftime_T *tm2);
+void profile_self(proftime_T *self, proftime_T *total, proftime_T *children);
+void profile_get_wait(proftime_T *tm);
+void profile_sub_wait(proftime_T *tm, proftime_T *tma);
+int profile_equal(proftime_T *tm1, proftime_T *tm2);
+int profile_cmp(const proftime_T *tm1, const proftime_T *tm2);
+void ex_profile(exarg_T *eap);
+char_u *get_profile_name(expand_T *xp, int idx);
+void set_context_in_profile_cmd(expand_T *xp, char_u *arg);
+void profile_dump(void);
+void prof_inchar_enter(void);
+void prof_inchar_exit(void);
+int prof_def_func(void);
+void prof_sort_list(FILE *fd, ufunc_T **sorttab, int st_len, char *title, int prefer_self);
+void prof_func_line(FILE *fd, int count, proftime_T *total, proftime_T *self, int prefer_self);
+int prof_total_cmp(const void *s1, const void *s2);
+int prof_self_cmp(const void *s1, const void *s2);
+void func_do_profile(ufunc_T *fp);
+void prof_child_enter(proftime_T *tm);
+void prof_child_exit(proftime_T *tm);
+void func_line_start(void *cookie);
+void func_line_exec(void *cookie);
+void func_line_end(void *cookie);
+/* vim: set ft=c : */