diff options
Diffstat (limited to 'src/alloc.c')
| -rw-r--r-- | src/alloc.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/alloc.c b/src/alloc.c index f97b99c0f31..da01173fba2 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -4981,7 +4981,11 @@ mark_memory (void *start, void *end) | |||
| 4981 | for (pp = start; (void *) pp < end; pp += GC_POINTER_ALIGNMENT) | 4981 | for (pp = start; (void *) pp < end; pp += GC_POINTER_ALIGNMENT) |
| 4982 | { | 4982 | { |
| 4983 | mark_maybe_pointer (*(void **) pp); | 4983 | mark_maybe_pointer (*(void **) pp); |
| 4984 | mark_maybe_object (*(Lisp_Object *) pp); | 4984 | |
| 4985 | verify (alignof (Lisp_Object) % GC_POINTER_ALIGNMENT == 0); | ||
| 4986 | if (alignof (Lisp_Object) == GC_POINTER_ALIGNMENT | ||
| 4987 | || (uintptr_t) pp % alignof (Lisp_Object) == 0) | ||
| 4988 | mark_maybe_object (*(Lisp_Object *) pp); | ||
| 4985 | } | 4989 | } |
| 4986 | } | 4990 | } |
| 4987 | 4991 | ||