emacs-devel
[Top][All Lists]
Advanced

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

Re: USE_LSB_TAG and MS-DOS


From: Stefan Monnier
Subject: Re: USE_LSB_TAG and MS-DOS
Date: 17 May 2004 12:22:15 -0400
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3.50

>> Can you compile with ENABLE_CHECKING and try again?
>> And give me a backtrace?

> Will try to do that soon.
> By ``backtrace'' you meant a C-level backtrace inside GDB, yes?

Yes.

>> After all, all we need is to make sure pointers are multiples of 8.
>> GNU malloc guarantees that AFAIK for malloced objects and DECL_ALIGN allows
>> to get the same guarantee for static objects, so if we have both the only
>> reasonf ro USE_LSB_TAG to fail is a bug, right?
> Perhaps so, but, being unsure I know enough about the alignment
> issues, I bother.  For example, is stack alignment an issue?

It shouldn't.  The only places where I change the alignemnt are where I use
DECL_ALIGN and in pure_alloc.  In both cases the alignment should be
increased ather than decreased, so it shouldn't cause any problem.
Barring any bug, that is (of course).

> And what about the default alignment used by GCC for code and data?
> I also need to check whether the __attribute__((__align__)) thingy is
> supported and does TRT in the DJGPP (a.k.a. MS-DOS) port of GCC.

ENABLE_CHECKING should give you those answers pretty quickly since it
checks that pointers are properly aligned before tagging them to make
Lisp_Objects.

> There was also talk about using memalign.  I didn't follow that thread
> closely, so I don't remember: is that relevant in any way to the case
> in point?

No, the code is currently not using memalign.  The use of memalign would
only be for cases where malloc is not known to return
multiple-of-8 pointers.


        Stefan




reply via email to

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