Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 Jun 2018 13:27:33 +0000
From:      Brooks Davis <brooks@freebsd.org>
To:        Ravi Pokala <rpokala@freebsd.org>
Cc:        "Jonathan T. Looney" <jtl@freebsd.org>, Mateusz Guzik <mjguzik@gmail.com>, Mateusz Guzik <mjg@freebsd.org>, src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r334702 - head/sys/sys
Message-ID:  <20180607132733.GA41876@spindle.one-eyed-alien.net>
In-Reply-To: <468B8AB5-D2C7-4033-9F24-6E1F94DC7137@panasas.com>
References:  <201806060508.w56586c9053686@repo.freebsd.org> <6E6E92B2-7536-4281-8EAF-72823E84902E@panasas.com> <CAGudoHF9Kw6gFyNkJADzCCg0vvSq-o%2BrWwxBX15cKszDSV5KiA@mail.gmail.com> <47E06039-234C-4078-A732-BFF230D2472B@panasas.com> <CADrOrmu5gYakgXu4bM9CMh5zQa2LZv6pA7tTEScoZH-hs9hMTQ@mail.gmail.com> <468B8AB5-D2C7-4033-9F24-6E1F94DC7137@panasas.com>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
On Thu, Jun 07, 2018 at 12:01:00AM -0400, Ravi Pokala wrote:
> > I believe the theory is that the compiler (remember, this is __builtin_memset) can optimize away portions of the zeroing, or can optimize zeroing for small sizes.
> 
> Ahhh! I didn't consider that the compiler would be doing analysis of the larger context, and potentially skipping zeroing parts that are set immediately after the call.

Clang does this.  It does make for some quite interesting object code,
but the result is that zeroing with __builtin_memset() is basically free
for mostly-initialized structures.

-- Brooks

[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----

iQEcBAEBAgAGBQJbGTLEAAoJEKzQXbSebgfA8cIH/RlCwFDXLPa31BCS4XMjzqxJ
/31i3IEKOH7/4aQHxlf58rquy6xAi1w3nI0bLavyCU/9BFoJeAvwat1UkdVCK92x
6z3tdOP0XUK2hAJidT1T4/lgWT8VbRERnGOnQseL2fSV9Cb64PDkP6RLB1lEVBTE
I4XzEM6oHOu5q6H74z2DDH4R0pNO1LU2K35pm4M4QTYGW5DWV7sXtnTzUONjnO07
6XSV8B/jFNiTUNEqY81o9jkcpk6ocCPKDsgIjwym6hDbEGrVrSmJFw6oDzoLoPI+
wkwMh1LDtm07VxgD5n8wt7RjUb/2a79GuQ/AcZhstzvnZekBP8iyGBJSXBgvJF0=
=rAJw
-----END PGP SIGNATURE-----

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20180607132733.GA41876>