Date: Tue, 24 Oct 2017 09:18:50 +0100 From: David Chisnall <theraven@FreeBSD.org> To: Mateusz Guzik <mjguzik@gmail.com> Cc: FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: There is *NO* abi stability in -head Message-ID: <07ED56CD-A7D5-44DE-B44A-C24BE9FC5488@FreeBSD.org> In-Reply-To: <CAGudoHERrva8esddVU66PhZYL%2BZjmh8JtWXFtH4=vBZcTX-aQg@mail.gmail.com>
index | next in thread | previous in thread | raw e-mail
On 23 Oct 2017, at 21:35, Mateusz Guzik <mjguzik@gmail.com> wrote:
>
> Instead, the same can be reshuffled:
> struct crap2 {
> int i1;
> int i2;
> void *p1;
> void *p2;
> };
>
> With offsets:
>
> 0x1000 i1
> 0x1004 i2
> 0x1008 p1
> 0x1010 p2
>
> This is only 24 bytes. 2 ints can be placed together and since they add
> up to 8 the p1 pointer gets the right alignment without extra padding.
If you are making changes of this nature, please consider sorting in the other order. When we start seeing 128-bit pointers (which, with CHERI-like systems, may be sooner than you think) then this ordering will give you lots of padding, whereas putting the pointers first will not.
David
home |
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?07ED56CD-A7D5-44DE-B44A-C24BE9FC5488>
