aboutsummaryrefslogtreecommitdiffstats
path: root/src/ChangeLog
diff options
context:
space:
mode:
authorStefan Monnier2012-09-24 10:38:10 -0400
committerStefan Monnier2012-09-24 10:38:10 -0400
commit3d80c99f3817bf5eccd6acc6a79498a4fde979a4 (patch)
tree5377692a9d9b96157a42b8ae693a8f7d18a8bc85 /src/ChangeLog
parent0970d85fef9830e3b8e5cbfbdc04dbf00cc4c027 (diff)
downloademacs-3d80c99f3817bf5eccd6acc6a79498a4fde979a4.tar.gz
emacs-3d80c99f3817bf5eccd6acc6a79498a4fde979a4.zip
Rewrite sampler to use Elisp hash-tables.
* src/profiler.c: Remove filtering functionality. (is_in_trace, Qgc): Remove vars. (make_log, record_backtrace, Fsample_profiler_log): Rewrite, using Elisp hash-tables. (approximate_median, evict_lower_half): New functions. (cpu_log): Rename from sample_log. (cpu_gc_count): New var. (Fsample_profiler_reset, Fmemory_profiler_reset): Remove. (sigprof_handler): Add count to cpu_gc_count during GC, detected via backtrace_list. (block_sigprof, unblock_sigprof): Remove. (gc_probe, mark_profiler): Remove functions. (syms_of_profiler): Staticpro cpu_log and memory_log. * lisp/profiler.el (profiler-sample-interval): Move before first use. Change default to 1ms. (profiler-entry=, profiler-backtrace-reverse, profiler-log-fixup-slot) (profiler-calltree-elapsed<, profiler-calltree-elapsed>): Remove functions. (profiler-entry-format): Don't use type-of. (profiler-slot, profiler-log): Remove structs. (profiler-log-timestamp, profiler-log-type, profiler-log-diff-p): Redefine for new log representation. (profiler-log-diff, profiler-log-fixup, profiler-calltree-build-1): Rewrite for new log representation. (profiler-calltree): Remove `elapsed' fields. (profiler-calltree-count<, profiler-report-make-entry-part): Remove gc special case. (profiler-calltree-find): Use equal. (profiler-calltree-walk): Remove `args'; rely on closures instead. (profiler-calltree-compute-percentages-1): Remove; inlined. (profiler-calltree-compute-percentages): Simplify. (profiler-report-log, profiler-report-reversed) (profiler-report-order): Use defvar-local. (profiler-report-line-format): Remove `elapsed', do a bit of CSE. (profiler-report-mode-map): Remove up/down bindings. (profiler-report-make-buffer-name): Simplify by CSE. (profiler-report-mode): Remove redundant code. (profiler-report-expand-entry, profiler-report-collapse-entry): Use inhibit-read-only. (profiler-report-render-calltree-1): Simplify by CSE. (profiler-reset): Rewrite for new subroutines. (profiler--report-cpu): Rename from sample-profiler-report. (profiler--report-memory): Rename from memory-profiler-report. * src/alloc.c (Fgarbage_collect): Record itself in backtrace_list. Don't set is_in_trace any more. Don't call mark_profiler. Only call gc_probe for the memory profiler. (syms_of_alloc): Define Qautomatic_gc. * src/lisp.h (SXHASH_COMBINE): Move back to... * src/fns.c (SXHASH_COMBINE): ...here. * src/xdisp.c (Qautomatic_redisplay): New constant. (redisplay_internal): Record itself in backtrace_list. (syms_of_xdisp): Define Qautomatic_redisplay. * .dir-locals.el (indent-tabs-mode): Remove personal preference.
Diffstat (limited to 'src/ChangeLog')
-rw-r--r--src/ChangeLog28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index feb9c6219fb..1b90ae8b976 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,31 @@
12012-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * xdisp.c (Qautomatic_redisplay): New constant.
4 (redisplay_internal): Record itself in backtrace_list.
5 (syms_of_xdisp): Define Qautomatic_redisplay.
6
7 * profiler.c: Remove filtering functionality.
8 (is_in_trace, Qgc): Remove vars.
9 (make_log, record_backtrace, Fsample_profiler_log):
10 Rewrite, using Elisp hash-tables.
11 (approximate_median, evict_lower_half): New functions.
12 (cpu_log): Rename from sample_log.
13 (cpu_gc_count): New var.
14 (Fsample_profiler_reset, Fmemory_profiler_reset): Remove.
15 (sigprof_handler): Add count to cpu_gc_count during GC, detected via
16 backtrace_list.
17 (block_sigprof, unblock_sigprof): Remove.
18 (gc_probe, mark_profiler): Remove functions.
19 (syms_of_profiler): Staticpro cpu_log and memory_log.
20
21 * lisp.h (SXHASH_COMBINE): Move back to...
22 * fns.c (SXHASH_COMBINE): ...here.
23
24 * alloc.c (Fgarbage_collect): Record itself in backtrace_list.
25 Don't set is_in_trace any more. Don't call mark_profiler.
26 Only call gc_probe for the memory profiler.
27 (syms_of_alloc): Define Qautomatic_gc.
28
12012-09-15 Tomohiro Matsuyama <tomo@cx4a.org> 292012-09-15 Tomohiro Matsuyama <tomo@cx4a.org>
2 30
3 * alloc.c (emacs_blocked_malloc): Remove redundant MALLOC_PROBE. 31 * alloc.c (emacs_blocked_malloc): Remove redundant MALLOC_PROBE.