guile-devel
[Top][All Lists]
Advanced

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

Re: guile 1.8 and x86_64


From: Marius Vollmer
Subject: Re: guile 1.8 and x86_64
Date: 08 May 2006 00:29:32 +0300
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.4

Miroslav Lichvar <address@hidden> writes:

> On Fri, May 05, 2006 at 04:05:34PM +0200, Miroslav Lichvar wrote:
> > The scm_mark_locations function in gc-mark.c calls scm_gc_mark on
> > everything located in one of the allocated segments. Shouldn't there
> > be a check if the address is at least scm_t_cell aligned? 

Yes!  I haven't really seen the 64bit problem myself, but you theory
sounds very convincing.  This is very likely the solution.
 
What about this this patch, tho, which is exactly the same as yours,
but a bit more similar to the code we have:

137c137
< #define CELL_P(x)  (SCM_ITAG3 (x) == scm_tc3_cons)
---
> #define CELL_P(x)  ((SCM_UNPACK(x) & (sizeof(scm_t_cell)-1)) == scm_tc3_cons)

I'll put it in right away, with a comment.

Thanks a 18446744073709551616!

-- 
GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3  331E FAF8 226A D5D4 E405




reply via email to

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