aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAndreas Schwab2003-01-10 20:08:54 +0000
committerAndreas Schwab2003-01-10 20:08:54 +0000
commit3a8d08994a8df44a9020a25b3917e02c6da81465 (patch)
tree91bcae25a770f98bdb63f5b84d6dd5f2f924f3d0 /src
parentd4aeef3b961bcbfb78a388683f64a4ce971fda26 (diff)
downloademacs-3a8d08994a8df44a9020a25b3917e02c6da81465.tar.gz
emacs-3a8d08994a8df44a9020a25b3917e02c6da81465.zip
(pure_alloc): Correct alignment for Lisp_Floats.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog5
-rw-r--r--src/alloc.c9
2 files changed, 12 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 66f295b0932..d10f6e52b19 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
12003-01-10 Andreas Schwab <schwab@suse.de>
2
3 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
4 Reported by Berthold Gunreben <b.gunreben@web.de>.
5
12003-01-10 Dave Love <fx@gnu.org> 62003-01-10 Dave Love <fx@gnu.org>
2 7
3 * composite.c (syms_of_composite): Make composition_hash_table 8 * composite.c (syms_of_composite): Make composition_hash_table
diff --git a/src/alloc.c b/src/alloc.c
index b884bfabfb0..47885c67534 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -1,5 +1,5 @@
1/* Storage allocation and gc for GNU Emacs Lisp interpreter. 1/* Storage allocation and gc for GNU Emacs Lisp interpreter.
2 Copyright (C) 1985, 86, 88, 93, 94, 95, 97, 98, 1999, 2000, 2001, 2002 2 Copyright (C) 1985, 86, 88, 93, 94, 95, 97, 98, 1999, 2000, 2001, 2002, 2003
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
@@ -3844,7 +3844,12 @@ pure_alloc (size, type)
3844#else 3844#else
3845 alignment = sizeof (struct Lisp_Float); 3845 alignment = sizeof (struct Lisp_Float);
3846#endif 3846#endif
3847 pure_bytes_used = ALIGN (pure_bytes_used, alignment); 3847 /* Make sure beg + pure_bytes_used is correctly aligned for a
3848 Lisp_Float, which might need stricter alignment than
3849 EMACS_INT. */
3850 pure_bytes_used
3851 = (ALIGN ((EMACS_UINT) (beg + pure_bytes_used), alignment)
3852 - (EMACS_UINT) beg);
3848 } 3853 }
3849 3854
3850 nbytes = ALIGN (size, sizeof (EMACS_INT)); 3855 nbytes = ALIGN (size, sizeof (EMACS_INT));