emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emacs-26 threads problem [win64]


From: Andreas Schwab
Subject: Re: Emacs-26 threads problem [win64]
Date: Sat, 14 Oct 2017 11:26:17 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)

On Okt 14 2017, Paul Eggert <address@hidden> wrote:

> diff --git a/src/alloc.c b/src/alloc.c
> index 2e6399e..da0c3ad 100644
> --- a/src/alloc.c
> +++ b/src/alloc.c
> @@ -2923,9 +2923,13 @@ set_next_vector (struct Lisp_Vector *v, struct 
> Lisp_Vector *p)
>  
>  enum
>    {
> -    /* Alignment of struct Lisp_Vector objects.  */
> -    vector_alignment = COMMON_MULTIPLE (FLEXALIGNOF (struct Lisp_Vector),
> -                                      GCALIGNMENT),
> +    /* Alignment of struct Lisp_Vector objects.  Because pseudovectors
> +       can contain any C type, align at least as strictly as
> +       max_align_t.  On x86 and x86-64 this can waste up to 8 bytes
> +       for typical vectors, since alignof (max_align_t) is 16 but
> +       typical vectors need only an alignment of 8.  However, it is
> +       not worth the hassle to avoid wasting those bytes.  */

That can be a lot of wastage for small vectors.

Andreas.

-- 
Andreas Schwab, address@hidden
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."



reply via email to

[Prev in Thread] Current Thread [Next in Thread]