view src/proto/profiler.pro @ 33557:e9038f9de714 v9.0.2026

patch 9.0.2026: win32: python3 dll loading can be improved Commit: https://github.com/vim/vim/commit/ae3cfa47d3dcee75061db598eb19879693b2393a Author: Ken Takata <kentkt@csc.jp> Date: Sat Oct 14 11:49:09 2023 +0200 patch 9.0.2026: win32: python3 dll loading can be improved Problem: win32: python3 dll loading can be improved Solution: Load DLL from registry path Support loading python3.dll and/or python3xx.dll from the path written in the registry. To support Stable ABI's forwarder DLL (python3.dll), use the `LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR` flag for `LoadLibraryExW()` because python3xx.dll is placed in the same directory of python3.dll. If Stable ABI is used, search the latest version from the registry (both from HKEY_CURRENT_USER and HKEY_LOCAL_MACHINE). If Stable ABI is not used, search only the matching version. closes: #13315 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Ken Takata <kentkt@csc.jp>
author Christian Brabandt <cb@256bit.org>
date Sun, 15 Oct 2023 09:13:06 +0200
parents 0082503ff2ff
children
line wrap: on
line source

/* 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_sub_wait(proftime_T *tm, proftime_T *tma);
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 prof_inchar_enter(void);
void prof_inchar_exit(void);
int prof_def_func(void);
void func_do_profile(ufunc_T *fp);
void profile_may_start_func(profinfo_T *info, ufunc_T *fp, ufunc_T *caller);
void profile_may_end_func(profinfo_T *info, ufunc_T *fp, ufunc_T *caller);
void prof_child_enter(proftime_T *tm);
void prof_child_exit(proftime_T *tm);
void func_line_start(void *cookie, long lnum);
void func_line_exec(void *cookie);
void func_line_end(void *cookie);
void script_do_profile(scriptitem_T *si);
void script_prof_restore(proftime_T *tm);
void profile_dump(void);
void script_line_start(void);
void script_line_exec(void);
void script_line_end(void);
/* vim: set ft=c : */