diff options
author | Mattias EngdegÄrd <mattiase@acm.org> | 2020-07-03 20:13:50 +0200 |
---|---|---|
committer | Mattias EngdegÄrd <mattiase@acm.org> | 2020-07-05 16:56:32 +0200 |
commit | c10293e168f752607ae51edd09922505927c29b1 (patch) | |
tree | 3bb644794244d07091c52ad32b9586f0f1011f3c /lisp/emacs-lisp/pcase.el | |
parent | 1560c92c9c205901d822a3ab3fba00ad6bf9805c (diff) | |
download | emacs-c10293e168f752607ae51edd09922505927c29b1.tar.gz emacs-c10293e168f752607ae51edd09922505927c29b1.tar.bz2 emacs-c10293e168f752607ae51edd09922505927c29b1.zip |
Relax portable number check in byte compiler (bug#42147)
With bignums, the set of representable integers is no longer
platform-dependent, and since we use nothing but IEEE754 64-bit
floats, all numbers are now portable. Take advantage of this fact
to simplify constant-folding in the byte compiler, allowing it to
be applied more widely.
* lisp/emacs-lisp/byte-opt.el (byte-opt--portable-max)
(byte-opt--portable-min, byte-opt--portable-numberp): Remove.
(byte-opt--arith-reduce, byte-optimize-minus, byte-optimize-1+)
(byte-optimize-1-): Simplify: any number will do, and if N is a
number, then so are -N, N+1 and N-1.
Diffstat (limited to 'lisp/emacs-lisp/pcase.el')
0 files changed, 0 insertions, 0 deletions