Hello,

I want to understand how Zend MM works, so i'm looking trought the sources and 
i see this:

#define ZEND_MM_ALIGNMENT_MASK ~(ZEND_MM_ALIGNMENT-1) #define 
ZEND_MM_ALIGNED_SIZE(size)        (((size) + ZEND_MM_ALIGNMENT - 1) & 
ZEND_MM_ALIGNMENT_MASK) 


I understand that the first define will create something like 11111000 ( it 
will clear last 3 bits)
but what does the 2nd define? Before clearing the last 3 bytes why does it add 
ZEND_MM_ALIGNMENT- 1
to size?

Thanks,

Reply via email to