[Top][All Lists]

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

Re: daily: vim problem again

From: Paul Dufresne
Subject: Re: daily: vim problem again
Date: Fri, 26 Feb 2021 23:33:33 -0500
User-agent: Zoho Mail

---- Le ven., 26 févr. 2021 23:13:56 -0500 Jessica Clarke <jrtc27@debian.org> 
écrit ----
 > The low 3 bits of the actual size are known to always be 0, so they 
 > aren't stored and instead replaced with the 3 flags. The diagram 
 > doesn't make that overly clear, but if you re-read all the text it 
 > should. Pictorially (not to scale): 
 > +-------------------------+ 
 > |       Size in bytes     | 
 > | High bits of size |A|M|P| 
 > +-------------------+-+-+-+ 
 > Alternatively, you can imagine that the value stored is indeed missing 
 > 3 bits, but it's also stored with 3 extra bits shoved on the end; you 
 > could then recover the original value by ((x >> 3) << 3), but that's 
 > the same as (x & ~7). 
 > Jess 

Oh, you means the size is always a multiple of 8.

It make sense with:
Alignment:                              2 * sizeof(size_t) (default)
       (i.e., 8 byte alignment with 4byte size_t). This suffices for
       nearly all current machines and C compilers. However, you can
       define MALLOC_ALIGNMENT to be wider than this if necessary.

I see... I kind of sad I did not make a great discovery. 

reply via email to

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