[Mesa-dev] [PATCH v2 1/2] virgl: Fix a strict-aliasing violation in the encoder

Emil Velikov emil.l.velikov at gmail.com
Wed Dec 7 15:53:37 UTC 2016


On 6 December 2016 at 22:34, Edward O'Callaghan
<funfunctor at folklore1984.net> wrote:
> On 12/07/2016 12:36 AM, Emil Velikov wrote:
>> On 6 December 2016 at 11:30, Edward O'Callaghan
>> <funfunctor at folklore1984.net> wrote:
>>> As per the C spec, it is illegal to alias pointers to different
>>> types. This results in undefined behaviour after optimization
>>> passes, resulting in very subtle bugs that happen only on a
>>> full moon..
>>>
>>> Use a memcpy() as a well defined coercion between the double
>>> to uint64_t interpretations of the memory.
>>>
>>> V.2: Use static_assert() instead of assert().
>>>
>> The lowercase static_assert is a c11 feature. You want to use the all
>> caps version.
>> See commit 23d1799f7dd5f8d1e8aa9f4efa6b1a4ed45faaa0
>
> Hi Emil,
>
> Why? I from that commit it seems only Android would have trouble however
> virgl nor svga would want to be enabled on that platform?
>
> Or is there something else I probably missed?
>
If there's a valid reason to require X or Y one must clearly point it
out, rather than jumping on bandwagons because it's cool/one can/etc.
Forcing X and Y [without justification] is disrespectful towards
everyone, even fellow developers. It also leads distro maintainers to
think that upstream does not give a sh*t about issues they are faced
with - old compilers, other.

There are [hundreds of] thousands people using mesa many of which with
their own quirky requirements. Please consider that for future.
Esp. when it's a trivial change as this ;-)

Thanks
Emil


More information about the mesa-dev mailing list