Allocate complex numbers in contiguous pointer-less memory.
authorLudovic Courtès <ludo@gnu.org>
Tue, 12 Oct 2010 20:57:08 +0000 (22:57 +0200)
committerLudovic Courtès <ludo@gnu.org>
Tue, 12 Oct 2010 22:06:30 +0000 (00:06 +0200)
commit03604fcf509892f894ce58096bbd3458080e3a19
tree35ba24e9e4e79d5a5ad3c60e7d0200e2d36e30ee
parent978c52d10889164079300bef55db2b6019b6b729
Allocate complex numbers in contiguous pointer-less memory.

* libguile/numbers.h (SCM_COMPLEX_MEM): Remove.
  (SCM_COMPLEX_REAL): Change to just fetch the `real' field of the
  pointed-to `scm_t_complex'.
  (SCM_COMPLEX_IMAG): Likewise.
  (scm_t_complex)[type, pad]: New fields.

* libguile/numbers.c (scm_c_make_rectangular): Allocate the whole
  complex contiguously, with `scm_gc_malloc_pointerless'.
libguile/numbers.c
libguile/numbers.h