[master] 777e03ba9 Disable strict aliasing with gcc where vtree.h is used
Nils Goroll
nils.goroll at uplex.de
Tue Mar 30 14:55:24 UTC 2021
late response to an email which I had overlooked:
On 24/03/2021 18:46, Dridi Boukelmoune wrote:
>> (*(uintptr_t *)&(parent)->entry.rbe_parent) &= ~((uintptr_t)3);
> Is culprit code part of generated vtree.h functions? Or macros that we
> may call directly?
Yes, this is some of the problematic code that the VRBT macros expand to.
>> https://www.gnu.org/software/automake/manual/html_node/Per_002dObject-Flags.html
> If this is only in generated functions, we may be able to annotate
> them with some kind of v_no_strict_aliasing_ attribute.
Good idea, we could try __attribute__ ((__may_alias__))
https://gcc.gnu.org/onlinedocs/gcc/Common-Type-Attributes.html#Common-Type-Attributes
I have not looked at how invasive this would be.
Nils
--
** * * UPLEX - Nils Goroll Systemoptimierung
Scheffelstraße 32
22301 Hamburg
tel +49 40 28805731
mob +49 170 2723133
fax +49 40 42949753
xmpp://slink@jabber.int.uplex.de/
http://uplex.de/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <https://www.varnish-cache.org/lists/pipermail/varnish-commit/attachments/20210330/86e0ba86/attachment.bin>
More information about the varnish-commit
mailing list