summaryrefslogtreecommitdiff
path: root/libguile/gsubr.c
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2014-09-20 03:49:46 -0400
committerMark H Weaver <mhw@netris.org>2014-09-20 05:38:05 -0400
commit156119b0223cf14d335ebda84701a69b2ba95757 (patch)
tree515ffaf2bea88d23bbb40d7eb192640d13dbd8f3 /libguile/gsubr.c
parenta85c78ea1393985fdb6e6678dea19135c553d341 (diff)
downloadguile-156119b0223cf14d335ebda84701a69b2ba95757.tar.gz
Do not assume that 64-bit integers will be 64-bit aligned.
* libguile/foreign.c (raw_bytecode, objcode_cells): * libguile/gsubr.c (raw_bytecode, objcode_cells): Use SCM_ALIGNED to ensure 64-bit alignment.
Diffstat (limited to 'libguile/gsubr.c')
-rw-r--r--libguile/gsubr.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/libguile/gsubr.c b/libguile/gsubr.c
index b6f261faf..f6357e16a 100644
--- a/libguile/gsubr.c
+++ b/libguile/gsubr.c
@@ -1,4 +1,5 @@
-/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2006, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+/* Copyright (C) 1995-2001, 2006, 2008-2011,
+ * 2014 Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
@@ -213,7 +214,7 @@
*/
static const struct
{
- scm_t_uint64 dummy; /* ensure 8-byte alignment; perhaps there's a better way */
+ SCM_ALIGNED (8) scm_t_uint64 dummy; /* alignment */
const scm_t_uint8 bytes[121 * (sizeof (struct scm_objcode) + 16
+ sizeof (struct scm_objcode) + 32)];
} raw_bytecode = {
@@ -317,7 +318,7 @@ static const struct
static const struct
{
- scm_t_uint64 dummy; /* alignment */
+ SCM_ALIGNED (8) scm_t_uint64 dummy; /* alignment */
scm_t_cell cells[121 * 2]; /* 11*11 double cells */
} objcode_cells = {
0,