Do not cons when calling foreign functions.
commit7aa33c0b1c6498fe034450c79cf96843c44d0f6b
authorStas Boukarev <stassats@gmail.com>
Sun, 10 May 2015 00:12:40 +0000 (10 03:12 +0300)
committerStas Boukarev <stassats@gmail.com>
Sun, 10 May 2015 00:12:40 +0000 (10 03:12 +0300)
treee32c494382b4e48df0c33b62c6c996fe4e045263
parent367250f12f005569a875c105957d5154a9e5ec1e
Do not cons when calling foreign functions.

By default, FP and PC are saved to aid debugging, but PC may turn out
to be non-fixnum and will have to be allocated, this happens all the
time on FreeBSD-x86. Instead of putting FP and PC into a dx-allocated
cons, put it into a dx-allocated word-specialized vector.
src/code/debug-int.lisp
src/code/early-alieneval.lisp
src/code/unix.lisp
src/compiler/aliencomp.lisp