[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: malloc and alignment

From: Stephen J. Turnbull
Subject: Re: malloc and alignment
Date: Tue, 17 Jun 2003 13:48:44 +0900
User-agent: Gnus/5.1002 (Gnus v5.10.2) XEmacs/21.5 (cassava, linux)

>>>>> "Stefan" == Stefan Monnier <monnier+gnu/address@hidden> writes:

    Stefan> I'd like to try and get rid of the markbit on Lisp_Object
    Stefan> values.  The idea is to scrape off a few more bits (I'd
    Stefan> like to bump maxint to 512MB instead of 128MB).  And I'd
    Stefan> also like to represent floats in 8bytes rather than 12.

Er, have you talked to Kyle Jones <address@hidden>, Martin
Buchholz <address@hidden>, or Olivier Galibert <address@hidden>?
It sounds like your goals are different, but XEmacs went through this
process about 5 years ago (how time flies, make that 7!).  XEmacs has
31-bit integers, but at the cost of conses being indirect objects.  IIRC,
those guys were the ones who designed and implemented the new system.

Actually, if you are happy with character is-a int (up to now, you
have been, but Ken'ichi recently made some noises about a true
character type) you might be able to stuff the cons type in instead of
characters.  I'm not sure how you'd handle marking (maybe you could
use the tagbits in the cdr, or the integer bit?) but that might be a
way to go.  That doesn't help with the floats, unfortunately (or does
it? I guess you're not using platform floats directly?)

Even though the goals are different, those guys would certainly have a
lot to say about possible pitfalls, and maybe have some ideas about
how to extend this to the situation where you want more tagbits than
the "natural" alignment (of a pointer to Lisp_Object).

Institute of Policy and Planning Sciences     http://turnbull.sk.tsukuba.ac.jp
University of Tsukuba                    Tennodai 1-1-1 Tsukuba 305-8573 JAPAN
               Ask not how you can "do" free software business;
              ask what your business can "do for" free software.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]