[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
Re: immediate strings #2
From:
Stefan Monnier
Subject:
Re: immediate strings #2
Date:
2011年11月28日 21:07:35 -0500
User-agent:
Gnus/5.13 (Gnus v5.13) Emacs/24.0.91 (gnu/linux)
> struct Data_Lisp_String
> {
> unsigned int immediate_bit : 1;
> signed int : IMMEDIATE_STRING_LENGTH_BITS; /* padding for immediate size
> */
> unsigned int gcmarkbit : 1;
> signed int : IMMEDIATE_STRING_LENGTH_BITS; /* and for immediate size_byte
> */
> INTERVAL intervals;
> ptrdiff_t size;
> ptrdiff_t size_byte;
> unsigned char *data;
> };
Why? IIUC that sums up to 5x32bit, which will break the "multiple of
8 alignment" rule and hence will need to be be rounded up to 6x32bit,
for an overall increase of 50% in the size of struct Lisp_String.
I.e. a non-starter. There are bits available in size and size_byte, we
have to use those (like we currently do with gcmarkbit in `size').
Stefan
- Re: immediate strings #2, (continued)
- Re: immediate strings #2 , Ken Raeburn, 2011年11月28日
- Re: immediate strings #2 , Andreas Schwab, 2011年11月28日
- Re: immediate strings #2 , Stefan Monnier, 2011年11月28日
- Re: immediate strings #2 , Andreas Schwab, 2011年11月28日
- Re: immediate strings #2 , Ken Raeburn, 2011年11月28日
- Re: immediate strings #2 , Andreas Schwab, 2011年11月29日
- Re: immediate strings #2 , Ken Raeburn, 2011年11月29日
- Re: immediate strings #2 , Andreas Schwab, 2011年11月29日
- Re: immediate strings #2 , Ken Raeburn, 2011年11月30日
Re: immediate strings #2 , Paul Eggert, 2011年11月28日
- Re: immediate strings #2,
Stefan Monnier <=
- Re: immediate strings #2 , Dmitry Antipov, 2011年11月28日
- Re: immediate strings #2 , Paul Eggert, 2011年11月29日
- Re: immediate strings #2 , Dmitry Antipov, 2011年11月30日
- Re: immediate strings #2 , Paul Eggert, 2011年11月30日
- Re: immediate strings #2 , Ken Raeburn, 2011年11月30日
- Re: immediate strings #2 , Paul Eggert, 2011年11月30日
Re: immediate strings #2 , Dmitry Antipov, 2011年11月28日
Re: immediate strings #2 , Dmitry Antipov, 2011年11月29日