From 11883883a5b9cd7826dfc813a3ec479ead9e4537 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Wed, 22 Feb 2006 06:58:11 +0000 Subject: [PATCH] [BZ #315] 2004-08-09 Paul Eggert [BZ #315] * manual/memory.texi (Obstacks Data Alignment): The default alignment is not 4: it is enough to hold any type of data. Problem reported by Benno in . --- ChangeLog | 8 ++++++++ manual/memory.texi | 7 +++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index bf5d464..97670e8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,14 @@ * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Update comment, remove __THROW from epoll_wait, to match .../linux/sys/epoll.h file. +2004-08-09 Paul Eggert + + [BZ #315] + * manual/memory.texi (Obstacks Data Alignment): The default + alignment is not 4: it is enough to hold any type of data. + Problem reported by Benno in + . + 2005-11-15 Robert Millan [BZ #2161] diff --git a/manual/memory.texi b/manual/memory.texi index 0f28806..91b9d84 100644 --- a/manual/memory.texi +++ b/manual/memory.texi @@ -1968,7 +1968,8 @@ obstack_next_free (@var{obstack-ptr}) - obstack_base (@var{obstack-ptr}) Each obstack has an @dfn{alignment boundary}; each object allocated in the obstack automatically starts on an address that is a multiple of the -specified boundary. By default, this boundary is 4 bytes. +specified boundary. By default, this boundary is aligned so that +the object can hold any type of data. To access an obstack's alignment boundary, use the macro @code{obstack_alignment_mask}, whose function prototype looks like @@ -1980,7 +1981,9 @@ this: The value is a bit mask; a bit that is 1 indicates that the corresponding bit in the address of an object should be 0. The mask value should be one less than a power of 2; the effect is that all object addresses are -multiples of that power of 2. The default value of the mask is 3, so that +multiples of that power of 2. The default value of the mask is a value +that allows aligned objects to hold any type of data: for example, if +its value is 3, any type of data can be stored at locations whose addresses are multiples of 4. A mask value of 0 means an object can start on any multiple of 1 (that is, no alignment is required). -- 2.7.4