summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/re-builder.el
diff options
context:
space:
mode:
authorMattias EngdegÄrd <mattiase@acm.org>2022-08-09 10:57:46 +0200
committerMattias EngdegÄrd <mattiase@acm.org>2022-08-10 12:51:40 +0200
commit9d35afed49896928433bb28a781b6060bc1601b1 (patch)
tree682d3ea793c52fbfc3bda5baed72a093834effda /lisp/emacs-lisp/re-builder.el
parent1d9ee2727046c1ca405e8c5a03069b0254d1277d (diff)
downloademacs-9d35afed49896928433bb28a781b6060bc1601b1.tar.gz
emacs-9d35afed49896928433bb28a781b6060bc1601b1.tar.bz2
emacs-9d35afed49896928433bb28a781b6060bc1601b1.zip
Extend LAP optimisations to more operations
Extend the set of eligible opcodes for certain peephole transformations, which then provide further optimisation opportunities. * lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode): Optimise empty save-current-buffer in the same way as we already do for save-excursion and save-restriction. This is safe because (save-current-buffer) is a no-op. (byte-compile-side-effect-and-error-free-ops): Add list3, list4 and listN. These were all apparent oversights as list1 and list2 were already included. (byte-after-unbind-ops): Add stack-ref, stack-set, discard, list3, list4 and listN. Stack manipulation is safe because unbind cannot read or modify stack entries.
Diffstat (limited to 'lisp/emacs-lisp/re-builder.el')
0 files changed, 0 insertions, 0 deletions