[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFC] allocating intervals as vectors
From: |
Dmitry Antipov |
Subject: |
[RFC] allocating intervals as vectors |
Date: |
Wed, 29 Aug 2012 10:11:04 +0400 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:14.0) Gecko/20120713 Thunderbird/14.0 |
This patch converts intervals to a pseudovectors, thus eliminating special
allocation and sweeping stuff. Although I think that intervals are more
similar to misc objects rather than vectors, they're just too large for
union Lisp_Misc (largest misc objects has 4 full-sized slots and interval
has 6). Since intervals aren't referenced via Lisp_Objects, we don't need
special pseudovector type and can use PVEC_OTHER.
Also I think that this change may be useful for further GC development.
It's very useful to have the ability to represent all collectable objects
as Lisp_Objects, for example, to avoid tricks when recording inter-generational
pointers - if intervals are usual pseudovectors, interval pointers may be
passed and recorded as Lisp_Objects after introducing PVEC_INTERVAL.
Dmitry
pvec_interval.patch
Description: Text document
- [RFC] allocating intervals as vectors,
Dmitry Antipov <=