Do not cons in (values (truncate (the double-float x))).
commit8866f406bb5a6fbb2089e3d9d00dbbd7b7dfdcea
authorStas Boukarev <stassats@gmail.com>
Sun, 24 Dec 2017 14:14:26 +0000 (24 17:14 +0300)
committerStas Boukarev <stassats@gmail.com>
Fri, 29 Dec 2017 11:38:43 +0000 (29 14:38 +0300)
treeab5cb186ee85accfce928cdb5c654e965eb68d85
parenta006260dfbe43082a9d1dc921159daf08b15204d
Do not cons in (values (truncate (the double-float x))).

Add a new facility for declaring functions FLUSHABLE locally, use it
for the TRUNCATE transform to flush unused %DOUBLE-FLOAT and
%SINGLE-FLOAT, since they are guaranteed to run without errors in this
case.
src/code/full-eval.lisp
src/compiler/early-lexenv.lisp
src/compiler/float-tran.lisp
src/compiler/ir1tran.lisp
src/compiler/ir1util.lisp
tests/float.pure.lisp