diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2021-01-20 14:08:35 -0500 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2021-01-20 14:13:15 -0500 |
commit | 66439d31ad2a63753d29e4582b76b36b9363d96b (patch) | |
tree | 914f5a0a6502f96cd676140977299c773d94dc1f /lisp/emacs-lisp/backtrace.el | |
parent | 4dfebf25c743d4ba4506919b58591f74debfb334 (diff) | |
download | emacs-66439d31ad2a63753d29e4582b76b36b9363d96b.tar.gz emacs-66439d31ad2a63753d29e4582b76b36b9363d96b.tar.bz2 emacs-66439d31ad2a63753d29e4582b76b36b9363d96b.zip |
* lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode): Add 2 new opts
This introduces two new optimizations. They're designed for code like
(while
(let (...)
(if ... (progn blabla t) (progn blabla nil)))
...)
and they allow the elimination of the test internal to `while` since
we can immediately know when we return `t` or `nil` what the result
of the test will be.
`cl-labels` tends to generate this kind of code when it applies the
tail-call optimization.
Diffstat (limited to 'lisp/emacs-lisp/backtrace.el')
0 files changed, 0 insertions, 0 deletions