Commit [3bd011]  Maximize  Restore  History

Don't make bogus things when creating large arrays.

With the change to 1-bit fixnums tags on x86-64, the condition that
the fixnum words converted to bytes still fit into the word length no
longer holds, which causes the number of bytes to overflow and produce
unexpected results.

Declare the number of words in ALLOCATE-VECTOR to be
(unsigned-byte (- sb-vm:n-word-bits sb-vm:word-shift)).

Stas Boukarev Stas Boukarev 2014-07-30

changed src/code/array.lisp
changed src/compiler/generic/vm-fndb.lisp
changed tests/array.pure.lisp
src/code/array.lisp Diff Switch to side-by-side view
Loading...
src/compiler/generic/vm-fndb.lisp Diff Switch to side-by-side view
Loading...
tests/array.pure.lisp Diff Switch to side-by-side view
Loading...

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks