]> git.eshelyaron.com Git - emacs.git/commit
Allow per function speed declaration
authorAndrea Corallo <akrl@sdf.org>
Mon, 15 Jun 2020 18:26:00 +0000 (20:26 +0200)
committerAndrea Corallo <akrl@sdf.org>
Sun, 21 Jun 2020 22:05:29 +0000 (00:05 +0200)
commitdecced8337278e3e21e9926819edd7eab003587a
treed6f2feab309ad2f2c035b6160fe3aaa61acdb36e
parent29b2a08c36554ec26f8f3c51da2a2a26b13bfe8f
Allow per function speed declaration

* src/comp.c (COMP_SPEED): Rename.
(comp_t): Add 'func_speed' field.
(emit_mvar_lval, compile_function): Update for per function speed.
(Fcomp__compile_ctxt_to_file): COMP_SPEED renamed.

* lisp/emacs-lisp/comp.el (comp-speed): Doc update.
(comp-func): New 'speed' slot.
(comp-spill-speed): New function.
(comp-spill-lap-function, comp-intern-func-in-ctxt): Fill 'speed'
slot.
(comp-spill-lap-function): Gate -1 speed functions for native
compilation and emit bytecode instead.
(comp-spill-lap): Close over `byte-to-native-plist-environment'.
(comp-latch-make-fill): Update for per function speed.
(comp-limplify-top-level): Fill speed.
(comp-propagate1, comp-call-optim-form-call, comp-call-optim)
(comp-dead-code, comp-tco, comp-remove-type-hints): Update for per
function speed.
lisp/emacs-lisp/byte-run.el
lisp/emacs-lisp/bytecomp.el
lisp/emacs-lisp/comp.el
src/comp.c