0.8.3.94:
authorChristophe Rhodes <csr21@cam.ac.uk>
Fri, 26 Sep 2003 17:19:13 +0000 (17:19 +0000)
committerChristophe Rhodes <csr21@cam.ac.uk>
Fri, 26 Sep 2003 17:19:13 +0000 (17:19 +0000)
commit8f4ef01b8c9930d7dd0a56a96845a6d84ca5774d
treed297d4c2b74d65302326692db7ed436069204b96
parent3189006493c5d7389dde68eff83f713074946d5e
0.8.3.94:
Compiler fixes (touching only files in the alpha backend)
... the assembly routine for (signed-byte 32) [sic] truncate did
in fact work only for signed-byte 32 quantities, but was
being called on signed-byte 64 quantities.  Fix it.
... the translators for ASH were broken in amusing ways: some
led to internal compiler errors when fed out-of-range
numbers; more insidiously, others allowed temporaries
to be overwritten in some cases.  Fix them.
... lastly but not leastly, the %LI code to load an immediate
was wrong in a very small proportion of cases.  After
much scribbling, deduce why and fix it.
... test cases to go with all of the above.
OPTIMIZATIONS
src/assembly/alpha/arith.lisp
src/compiler/alpha/arith.lisp
src/compiler/alpha/insts.lisp
tests/arith.pure.lisp
tests/compiler.pure.lisp
version.lisp-expr