summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/generate-lisp-file.el
diff options
context:
space:
mode:
authorMattias EngdegÄrd <mattiase@acm.org>2024-03-21 19:35:15 +0100
committerMattias EngdegÄrd <mattiase@acm.org>2024-03-29 11:39:38 +0100
commitdeae311281522864ebabaf56adafbe37032cc8a9 (patch)
tree9672a97c14084162887cd6cc54d3565c195ce9e3 /lisp/emacs-lisp/generate-lisp-file.el
parentae5f2c02bd2fc269e2cc32c8039d95fbf4225e69 (diff)
downloademacs-deae311281522864ebabaf56adafbe37032cc8a9.tar.gz
emacs-deae311281522864ebabaf56adafbe37032cc8a9.tar.bz2
emacs-deae311281522864ebabaf56adafbe37032cc8a9.zip
Speed up `sort` by special-casing the `value<` ordering
This gives a 1.5x-2x speed-up when using the default :lessp value, by eliminating the Ffuncall overhead. * src/sort.c (order_pred_lisp, order_pred_valuelt): New. (merge_state, inorder, binarysort, count_run, gallop_left, gallop_right) (merge_init, merge_lo, merge_hi, tim_sort): * src/fns.c (Fsort): When using value<, call it directly.
Diffstat (limited to 'lisp/emacs-lisp/generate-lisp-file.el')
0 files changed, 0 insertions, 0 deletions